我正在使用 QuickTime API,需要在后台执行一些冗长的(以小时为单位)操作。不幸的是,它不是多线程友好的,所以我回退到在一个单独的进程中执行任务,所以所有与 QuickTime 相关的调用都可以在它的主线程中发生。
启动它后,我需要一种方法来获取有关其进度的反馈,因为操作可能需要很长时间。
我不确定如何做到这一点,特别是:
- 是否应该将单独的进程编译为另一个可可应用程序或命令行工具?
- 如何从主可可应用程序启动它?
- 如何定期从中获取对象以获取状态信息?
- 如何确定何时结束?
- 调用时如何避免显示窗口/控制台?
- 如何让它成为 .app 包的一部分,这样它就不会作为单独的可执行文件出现在用户面前?
这些确实是 6+ 问题,但它们非常相关且非常具体,我认为任何需要启动外部进程(而不是产生工作线程)的人都可以从他们的答案中受益。通用代码示例将非常有帮助。