原理:linux的shell命令可以实现多线程运行,并且线程间具备通信机制。
1、单线程
原理:默认的情况下,Shell脚本中的命令是串行执行的,必须等到前一条命令执行完后才执行接下来的命令。
实例:
- #!/bin/bash
- for(( i = 0; i < ${count}; i++ ))
- do
- commands1
- done
- commands2
2、多线程
方式:
{ command_x }&
原理:大括号以内为一个子线程运行。
实例:
- #!/bin/bash
- for(( i = 0; i < ${count}; i++ ))
- do
- {
- commands1
- }&
- done
- wait
- commands2
注意:wait函数,该函数将等待后台所有子进程结束。正是因为有了此函数,才能保证commands2在所有commands1执行完后再执行。