【发布时间】:2012-06-14 21:22:10
【问题描述】:
我不确定如何在我正在编写的程序中处理异步任务,我希望更有经验的人至少可以为我指明正确的方向。
我在嵌入式 ARM 处理器上运行 Angstrom Linux。我的程序通过暴露的硬件 PWM 和 PTP 上的摄像头控制多个伺服系统。此外,它是从任意客户端(在本例中为 Android)获取命令的套接字守护程序。相机 PTP 很慢,我不想等待它完成任务,因为程序的其余部分需要响应。
我已经尝试过线程,但是相机线程中的任何问题似乎都会杀死整个过程。理想情况下,我想自己送相机去做它的事情,当它完成时让主要功能知道。这是一种适当的分叉技术还是我不正确地实现了线程?
此外,我希望远离大型二级库,以避免出现更多交叉编译问题。提前感谢您的任何建议。
【问题讨论】:
-
为什么不在新进程中运行呢?然后通过套接字进行通信?
-
我使用高级 Linux 编程作为我的指南...它不包括 clone() 函数。似乎是适当的技术
-
可能是。或者它可能是
system()。也看看那个。
标签: c linux multithreading