现实工作场景中有很多为了实现快速处理,而采用并发执行.其他语言实现并发非常容易.那么shell脚本最为linux上面最友好的脚本语言能实现并发嘛?答案是必须的哈!~
那么波哥这里就写个例子分享给大家哈!~
#!/bin/bash #并发数 pnum=6 #想要执行的函数 task () { echo "$u start" sleep 5 echo "$u done" } FifoFile="$$.fifo" mkfifo $FifoFile exec 6<>$FifoFile rm $FifoFile for ((i=0;i<=$pnum;i++));do echo;done >&6 #执行20次 for u in `seq 1 20` do read -u6 { #调用函数 task #并发执行函数打印结果日志 [ $? -eq 0 ] && echo "${u} 次成功" || echo "${u} 次失败" echo >&6 } & done wait exec 6>&-
套用上面的例子就可以实现并发处理了哈!~如果觉得有用别忘了帮波哥转发分享哦!~