Linux下如何在线程中并发运行两个死循环?

Linux下如何在线程中并发运行两个死循环?,第1张

pthread_join 就是要等待线程退出的。

以上程序的功能是运行一个线程(fun1),然后等待它结束,再运行另一个线程(fun2),继续等待它退出,同时运行的线程最多两个(初始线程和两个fun中的一个)。

同时运行fun1和fun2,只需要把 pthead_join(tid1, &ret)移到第二个pthread_create后面就可以了。结果是运行fun1线程,然后运行fun2线程,再等待两个线程退出(线程里是死循环,永远等不到退出)。

注意看 pthread_join 的作用,Linux的手册页有详细描述。可以直接把线程设为detached,在线程里调pthread_exit。这样线程结束后,相关资源自动被释放,不用管该什么时候调用 pthread_join。

1、编写一个shell脚本,在脚本中编写循环执行的代码(可以是死循环),然后在linux上运行这个脚本即可。

2、可以把这个脚本在当前运行,也可以让这个脚本在后台运行。

3、当前运行的脚本如果要kill掉的话,可以直接ctrl+c;后台运行的脚本要kill掉的话,可以PS查看进程ID号,然后执行“kill 进程ID”命令即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8485969.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-16
下一篇 2023-04-16

发表评论

登录后才能评论

评论列表(0条)

保存