我在一个项目中需要调用系统命令。我最初开始查看 NSTask (因为这似乎是最流行的方法)但最近我刚刚遇到了这个system
命令。它看起来比 NSTask 更容易设置。我已经看到一些问题/答案说 NSTask 是更好的方法,但我没有看到
- 两者之间有什么优点/缺点
- 在什么情况下,一种比另一种更有可能被使用
任何帮助/链接/想法/想法?(是的..我做了谷歌搜索)
我在一个项目中需要调用系统命令。我最初开始查看 NSTask (因为这似乎是最流行的方法)但最近我刚刚遇到了这个system
命令。它看起来比 NSTask 更容易设置。我已经看到一些问题/答案说 NSTask 是更好的方法,但我没有看到
任何帮助/链接/想法/想法?(是的..我做了谷歌搜索)
NSTask
:
NSString
s,而无需进行大量转换。system(3)
——我认为它system
甚至不能在 iOS 上运行。system(3)
:
/bin/sh
。对于我总是使用的 Cocoa 应用程序NSTask
;我只system
在我做的事情必须是 C-only 或者我知道必须在非 Mac 环境下运行时才使用。事实上,它system
非常脆弱,更强大的解决方案是执行fork
- exec
,因为它允许您更好地控制流和并发操作。
有一些差异。对于他们中的一些人来说,一般来说可能很难说这是否是一种优势。
在没有重新检查文档的情况下,这是我脑海中的一些差异。这是一个概述。