1、假设系统最多可以同时运行1000个线程
2、开启1000个线程后(运行中),如果有线程sleep了,还能不能开启新的线程
3、线程sleep 对cpu 和内存有什么影响
线程sleep占用资源情况解析
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
老衲の少女心 2020-09-08 10:13关注开启1000个线程后(运行中),如果有线程sleep了,还能不能开启新的线程???没太明白你问的什么,如果你是线程池或者什么设定了只能有1000线程,那线程sleep之后只能等待这个线程唤醒之后,执行结束,如果你没有固定只能有1000线程,而是你电脑只能跑1000,你非要在线程睡眠的时候,再开一些线程,搞1001个,1002个,你可以试一下,我没试过
线程sleep之后有锁不会释放锁,其他线程要写执行得等着,sleep()使当前线程进入停滞状态(阻塞当前线程),让出CUP的使用、目的是不让当前线程独自霸占该进程所获的CPU资源,以留一定时间给其他线程执行的机会。所以不会占用cpu。时间到了会正常返回,线程处于就绪状态,然后参与cpu调度,获取到cpu资源之后就可以运行。
评论 打赏 举报解决 1无用