linux下如何实现shell多线程编程linux教程

linux下如何实现shell多线程编程linux教程
Linux中的多线程编程具有提高应用程序响应速度和使多cpu系统更有效的优点。接下来,小编将给你一个例子,通过外壳的多线程编程Linux下的多线程编程的例子解释的过程。
# /斌/狂欢!
# mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash ;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
这个例子说明了一个#等待读取控制技术、多线程模拟
这种技术通常用于#多主机检查,如SSH,平等的单一登录的过程是缓慢的,不消耗CPU。
#同时显示多个控制线程
# mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash;mdash ;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
功能a_sub
{
#来定义一个函数作为一个线程(进程
3睡眠是睡眠3s #螺纹的作用
}
tmp_fifofile = / / tmp美元。fifomkfifo tmp_fifofile美元#新FIFO文件类型
tmp_fifofile Exec 6美元# fd6 FIFO型
人民币tmp_fifofile线程= 15 #这里定义的线程数
对于
((i = 0;i $););做回声
做6 #实际上是在放线fd6美元回车
对于
((i = 0;50我;i++;做#))50个周期,可以理解为50的主机,或其他
读一读# U6 U6命令执行时间,减少fd6在回车,然后下执行,
当回车字符# fd6,停在这,从而实现线程的数量控制
这个过程开始{ #登场,背景
a_sub
{ #这里可用来确定过程的逻辑
a_sub是finished回声;
}
| |
{ echo 子error
}
回声6 #当过程完成,然后fd6一回车,这是由读U6减一
}
完成等待#等待所有的过程结束后表
执行6- #接近DF6退出0
描述:
此程序中的命令
tmpfile mkfifo
Linux的命令
mknod tmpfile P
效果是相同的。不同的是,mkfifo是POSIX标准,所以推荐使用它。这个命令创建了一个第一次在第一管文件和将文件标记6,管道文件是一种进程间通信。注意这句话很重要。
tmp_fifofile Exec 6美元# fd6 FIFO型
没有这句话,当数据写入到文件tmp_fifofile美元或6,程序将被阻塞直到读到文件的数据。执行上面的语句后,可以将数据写入FIFO型文件不在程序的运行时阻塞和数据将被保存为读取程序读取。
通过运行命令:
时间。 / multithread.sh / dev /空
最终计算时间:50 15=3组(15)+ 1组(5 15),每组4组,每组耗时3秒,
3×4=12秒。
传统的非多线程代码操作时间:50×3=150秒。
以上是linux下shell多线程编程的一个实例。利用多线程编程可以改进程序结构。有兴趣的朋友可以试试看。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部