什么时候有人想要使用NSThreads而不是GCD?

And*_*nez 7 cocoa cocoa-touch objective-c nsthread grand-central-dispatch

有没有人想要使用原始NSThread而不是GCD进行并发?我喜欢GCD,但我想知道我是否需要最终使用NSThreads进行Cocoa/Cocoa-Touch.

jus*_*tin 5

我使用pthreads来控制,良好的性能和可移植性.有时,您可能会选择使用它提供NSThread的额外NSObject接口.

有一些较低级别的接口,您需要使用您使用的API协调线程(例如实时I/O或渲染).有时您对所使用的线程有灵活性,有时NSThread在这种情况下使用很方便,因此您可以轻松地使用这些接口的CF或NS运行循环.因此,您在线程上设置的运行循环参数可能比API本身更感兴趣.在这些情况下,GCD可能不一定是替代方案.

但是......大多数开发者不需要经常降到这些水平.