我是 iOS 开发(和 Obj-C)的新手,我正在尝试将现有的 C 程序移植到 iOS。
C程序通常在控制台中运行,但我想在iPhone上为它制作一个UI。我已经移植了 C 代码,当模拟器运行时,我可以在控制台窗口中获得 printf 输出。我想尽可能避免更改原始代码,所以这是我的计划:
- 该程序需要一些时间来执行,所以我想我需要在单独的线程上运行它。看起来我只需要一个 NSInvocationOperation 来调用它的主要方法。
- 我会将标准输出重定向到管道。
- 在另一个线程上,我将从管道中读取,并将其扔给 UI。我不确定为此使用的最佳并发 API 是什么。
这对 iOS 来说是一个好的策略,还是有更好的移植方法?有什么我应该注意的陷阱吗?