Linux多线程时一些线程分不到时间片

时间:2021-10-11 08:34:06
我在程序程开了5个线程,各个线程内部包括main函数内部都在我觉得合适的地方调用了sleep的,但是执行时还是发现只有一个线程被执行,其它线程启动后就不能被再次执行到,网上找了一堆也没看到怎么回事,

2 个解决方案

#1


为什么要用sleep呢?线程启动以后就是并发了吧? 除非你读了共享数据,有的被阻塞了。。


www.crazyhadoop.com

#2


恩,检查了下,是传给线程的参数传错了,导致线程虽然启动了,但是一直判断没有数据,进入不了线程循环,我就以为是得不到时间片而没执行了,给你分吧

#1


为什么要用sleep呢?线程启动以后就是并发了吧? 除非你读了共享数据,有的被阻塞了。。


www.crazyhadoop.com

#2


恩,检查了下,是传给线程的参数传错了,导致线程虽然启动了,但是一直判断没有数据,进入不了线程循环,我就以为是得不到时间片而没执行了,给你分吧