NSThread和pthread线程有什么区别?NSThread是否使用pthread作为其内部实现?当pthread足够时,我们真的需要NSThread的额外开销吗?尤其是在iPhone上。
发布于 2010-12-05 21:24:37
我不确定NSThread是否在内部使用了pthread库。很可能是这样的,但由于我们没有NSThread的源代码,所以我们真的不知道。
不同之处在于,pthread是一个C库,而NSThread是一个Objective-C库。但它们都实现了相同的功能。
如果您需要将Objective-C API库与Objective-C API的其他部分结合使用,则需要使用Objective-C API库。也就是说,您将不能在NSArray.中存储 pthread
发布于 2012-06-14 09:00:56
据我所知,NSThread并不使用p线程,除非苹果已经彻底改变了这一点。对于POSIX标准来说,OOPC的起源还为时过早(pthread出现在公元1c,我想是1995年)。这是当前Objective-C运行时的众多批评之一。请参阅http://www.jot.fm/issues/issue_2009_01/article4.pdf,但是您可以通过标准C库访问Objective-C中的pthread。我们实际上已经在一个项目中做出了这个假设,并且在与我们使用pthread构建的库进行交互时遇到了问题(这是关于使用NSNotificationQueue的运行循环)。
https://stackoverflow.com/questions/4358976
复制相似问题