NSBundle 中的 NSTask
Posted
技术标签:
【中文标题】NSBundle 中的 NSTask【英文标题】:NSTask in NSBundle 【发布时间】:2011-12-20 06:07:43 【问题描述】:我正在计算特定路径上的文件总数,并将结果显示为custom cell。
我正在使用 NSThread 来计算 - (void)drawWithFrame:(NSRect)cellFrame inView:(NSView*)controlView
(inside the bundle) 方法中的文件数。当我计算文件数时,它显示为空单元格。我认为它在NSThread
之前调用[super drawWithFrame:newFrame inView:controlView];
返回结果。
谁能帮帮我??谢谢:)
【问题讨论】:
【参考方案1】:为此使用线程的真正原因是不阻塞主线程上的 UI。起作用的原因是线程启动了,然后线程创建方法立即返回,这样主线程就可以继续其他业务了。
所以是的,您在线程完成之前到达[super drawWithFrame:inView:]
。您不应该等待线程完成 - 这会破坏使用线程的目的。
无论如何,你不应该在牢房里做这一切。您应该从表视图的数据源中执行此操作。获得目录列表后立即启动线程(或者可能更好的操作),并在结果出现时更新单元格。
【讨论】:
以上是关于NSBundle 中的 NSTask的主要内容,如果未能解决你的问题,请参考以下文章
UIStoryboard() 中的 nil 和 NSBundle 有啥区别?