Linux shell 实现多线程
时间:2013-04-03 23:31来源:转载 作者:网络 点击:
次
在bash中,使用后台任务来实现任务的“多进程化”。在不加控制的模式下,不管有多少 任务,全部都后台执行。也就是说,在这种情况下,有多少任务就有多少“进程”在同时执行
转载请注明出处: Linux系统运维 http://www.linuxyw.com/linux/Shell/20130403/16.html
在bash中,使用后台任务来实现任务的“多进程化”。在不加控制的模式下,不管有多少 任务,全部都后台执行。也就是说,在这种情况下,有多少任务就有多少“进程”在同时执行。我们就先实现第一种情况:
实例一:正常情况脚本
# !/bin/bash
for ((i = 0 ;i < 5 ;i ++ )); do
 {
sleep 3 ;echo 1 >> aa && echo " done! "
 }
 done
wait
 cat aa | wc - l
 rm aa
这种情况下,程序顺序执行,每个循环3s,共需15s左右。
 $ time bash test . sh
 done !
 done !
 done !
 done !
 done !
5
 real 0m15 . 030s
 user 0m0 . 002s
 sys 0m0 . 003s
实例二:“多进程”实现
|
分享按钮
------分隔线----------------------------