首页 > TAG信息列表 > fifofile

Fd和命名管道实现shell并发控制

首先我把for循环中的代码用{}包为一个块,然后增加&符号使其后台运行,之后增加wait指令,该指令会等待所有后台进程结束,如果不加wait,程序直接往下走,最终打出的time将会是0。现在程序已经由之前的10秒缩短为2秒,似乎效果不错,不过试想这样一个场景,有1000个这样的任务,如果还是以这种方式

linux shell 利用mkfifo解决高并发

thread=5tmp_fifofile=/temp/$$.fifomkfifo $tmp_fifofileexec 8<>$tmp_fifofilerm $tmp_fifofilefor i in `seq $thread`do echo >&8donewhile :do read -u 8 { ....代码   echo >&8 }& donewaitexec 8>&-#释放文件  

Shell多线程实现

#!bash # 2014-12-5 # -------------------- # 此例子说明了一种用wait、read命令模拟多线程的一种技巧 # 此技巧往往用于多主机检查,比如ssh登录、ping等等这种单进程比较慢而不耗费cpu的情况 # ------------------------- operation(){ sleep $1 } tmp_fifofile=/tmp/