小编Séb*_*zer的帖子

从多线程程序中调用system()

我们正在开发一个用C ++编写的消耗内存的多线程应用程序。我们必须执行许多shellscript / linux命令(并获取返回代码)。

阅读该文章后,我们清楚地了解到在我们的上下文中使用system()是个坏主意。

一种解决方案是在程序启动之后和创建任何线程之前进行派生,但是与该进程的通信可能并不容易(套接字,管道?)。

我们考虑的第二个解决方案可能包括用python(使用xinetd?)编写的专用守护程序,该守护程序可以处理我们的系统调用。

你有没有那个问题?您是如何解决的?

注意:这是一篇更完整的文章,解释了此问题:http : //developers.sun.com/solaris/articles/subprocess/subprocess.html 他们建议使用posix_spawn,它使用vfork()而不是fork()(用于系统())。

c linux fork system pthreads

5
推荐指数
1
解决办法
5769
查看次数

标签 统计

c ×1

fork ×1

linux ×1

pthreads ×1

system ×1