昨天我在某处读到 NSTask 不是线程安全的,这让我很困扰,因为我在 NSThread 中运行 NSTask 并且到目前为止还没有遇到任何线程问题。
我的代码是这样组织的
A: main thread -> B: worker thread -> C: worker task
C: The worker task is a commandline program.
B: The worker thread can start/stop the worker task and send it commands.
A: The main thread can send commands to the worker thread.
如果 NSTask 应该只在主线程中使用,那么我正在考虑将 NSTask 启动/停止代码移动到主线程,以防止可能的线程问题。
NSTask 可以在主线程外使用吗?
如果不是,那么 NSTask 的线程问题可能是什么?