NSThread和NSTask之间的区别

时间:2012-08-09 13:32:14

标签: iphone nsthread nstask

这可能听起来像是一个愚蠢的问题,但我已经尝试过研究这两个类,我并不是百分之百确定他们的差异和具体目的是什么。另外,有什么方法可以检索所有当前正在运行的进程的列表,就像Windows上的任务管理器一样?我在想一些静态函数能够返回一个NSThreads或NSTasks数组......或者我可能只是想要完全错误的xD

提前感谢您的帮助! 汤姆

2 个答案:

答案 0 :(得分:2)

提供NSThread来创建和管理后台线程。你今天没有听到太多关于它的消息,因为Apple最近为这些目的增加了像Grand Central Dispatch GCD和NSOperationQueue这样的库,并提供了易用性。

NSTask有点像C系统命令的包装器。它仅适用于Mac OSX环境(不是IOS),用于启动操作系统命令 - 通常从命令行使用的命令。例如,一段时间后,我采用了一些方便的bash实用程序,这些实用程序是我为管理Xerox打印机而开发的,并通过使用Cocoa作为图形界面并使用NSTask启动命令行将Cocoa前端放在它们上面。 NSTask可以映射到那些unix命令的输入和输出,因此你可以在stdin上发送它们并在sdout上获取东西

希望有助于清除它

答案 1 :(得分:0)

我已经回答了部分问题,感谢本网站获取流程清单:http://jongampark.wordpress.com/2008/01/26/a-simple-objectie-c-class-for-checking-if-a-specific-process-is-running/

我仍然不知道NSTask和NsThread用于O.o