#!/bin/bash
QUEUE_NUM=10 #设置并发数
temp_fifo_file=/tmp/"$$".fifo
mkfifo "$temp_fifo_file"
exec 9<>"$temp_fifo_file"
for((i=1;i<=${QUEUE_NUM};i++));do
echo 1 1>&9
done
##子进程工作内容
Worker(){
local name=$1
echo "$name is working"
sleep 2
}
for i in `echo {1..50}`;do
read -u9
(
Worker $i
echo 1 1>&9
)&
done
wait
rm -f $temp_fifo_file
exec 9>&-
exec 9<&-
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。