shell 实现并发操作

来源:互联网 发布:软件销售范围 编辑:程序博客网 时间:2024/05/17 20:25
下面我们来模拟使用shell实现并发操作,有2个工作如下脚本所示:

work1.sh:

#!/bin/shecho "work1 start ......."sleep 5echo "work1 end .......
work2.sh

#!/bin/shecho "work2 start ......."sleep 2echo "work2 end .......
使用并发运行这2个work,concurrent_test.sh 

#/bin/shtime=`date +%s`#work1 sleep 5s./work1.sh &#$!是得到最后一个进程的idi=$!#work2 sleep 2s./work2.sh &j=$!#wait是等待线程/进程结束,  用法 wait [id]   不带id代表等待所有子线程结束waitecho "work1 pid $i"echo "work2 pid $j"time=$((`date +%s` - $time))echo "cost time: $time s"
运行结果:./concurrent_test.sh 
work1 start .......work2 start .......work2 end .......work1 end .......work1 pid 5663work2 pid 5665cost time: 5 s
两个work同时运行,花费时间5s。
0 0
原创粉丝点击