shell 并发

#!/bin/bash

# 设置并发数
thread_num=3

# 创建管道文件
FIFO=/tmp/$$-FIFO
mkfifo $FIFO

# 使用句柄打开管道文件
exec 1000<>$FIFO
rm -f $FIFO

# 向管道里面输入若干行
for i in `seq $thread_num`
do
        echo "" >&1000
done

## == main == ##

for i in `seq 10`
do
        read -u 1000
        {
                echo $i
                sleep 5

                echo "" >&1000
        }&

done

wait
echo end

posted @ 2022-11-16 16:30  武平宁  阅读(30)  评论(0)    收藏  举报