Chinaunix
标题:
shell没办法用内存共享来实现进程并发数的控制吗??
[打印本页]
作者:
ryr1990
时间:
2014-03-16 11:38
标题:
shell没办法用内存共享来实现进程并发数的控制吗??
shell如何控制并发进程数?
顺便问一下c语言中消息队列可以实现对并发进程数的控制,那可以用内存共享来实现吗?
作者:
runintostar
时间:
2014-03-16 12:08
回复
1#
ryr1990
内存共享好像不能吧,利用类似于队列的东西来控制可以的,网上搜搜很多的
http://bbs.chinaunix.net/forum.php?mod=redirect&goto=findpost&ptid=4125994&pid=24128838&fromuid=20835778
作者:
r2007
时间:
2014-03-17 08:12
回复
2#
runintostar
这个公式原型出自CU,能不能用shell做一个队列
http://bbs.chinaunix.net/forum.p ... 2&fromuid=45358
现在有个好东东叫parallel,专门做并发控制的相当专业。
http://www.gnu.org/software/parallel/
作者:
waker
时间:
2014-03-17 08:54
3楼楼长在3楼
作者:
r2007
时间:
2014-03-17 09:53
脖子还扭着,转过啦,n多年了。
作者:
runintostar
时间:
2014-03-17 11:59
本帖最后由 runintostar 于 2014-03-17 13:20 编辑
回复
3#
r2007
够呛,子shell修改了变量之后没法让父亲知道,如果不用通道的话,我估计只能通过子进程ID来判断
把子进程的sh文件里第一句就写$$。
父shell调子shell时用
a=`(./xxx.sh &)|head -1`:$a
复制代码
把子进程id全收集起来,然后跟踪他们是否完成.判断资源池是否有余
作者:
r2007
时间:
2014-03-17 12:19
回复
6#
runintostar
本来就是用的命名管道啊?
作者:
runintostar
时间:
2014-03-17 13:22
回复
7#
r2007
嗯嗯,我理解错了,我是说如果不用管道文件的话。估计就只能6#那样
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2