2011-06-02 83 views
1

在Linux平台上的C语言中类似以下内容: 我有一个线程说一个阅读系统调用(拦截系统调用)由应用程序进程创建。对于每个进程A创建一个线程,该线程执行所需的系统调用,然后休眠,直到A唤醒由另一个由其相应的应用程序进程调用的系统调用。当进程退出时,工作线程不再存在。许多进程由一个线程执行

所以它就像一个线程上的许多进程一样,然后通过每个进程一个线程扇出到许多线程。

感谢

+0

你的意思是像一个线程池? – grundprinzip 2011-06-02 18:19:51

+0

@grundprinzip是的 – 2011-06-02 18:22:50

回答

0

如果您正在寻找某种线程池实现,而不是严格限制到C,我会建议threadpool(这几乎是提升)。它易于使用和相当精益。您现在需要的唯一逻辑就是捕获系统事件,然后产生一个将执行调用的新任务线程。线程池将跟踪所有创建的线程并自动将工作分配给线程。

编辑

因为你是仅限于C,试试这个implementation。它看起来相当完整且相当简单,但基本上可以完成这项工作。

+0

我有使用C的限制,但你所描述的是exatly我想要的 – 2011-06-02 18:35:18