java - unable to create new native thread
怪我咯
怪我咯 2017-04-18 09:31:15
[Java讨论组]

我有一个程序主线程需要不断创建子线程,然后分配任务给该子线程执行。执行完之后子线程就没用了。
然后报出了java.lang.OutOfMemoryError: unable to create new native thread异常。
①java 的内存回收机制不会回收执行 完run方法的线程吗???
②java的线程的start方法只能调用一次,那么怎么复用已经存在的且执行完run方法的线程呢?
③如何解决该异常呢?

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(2)
高洛峰

用java的线程池

伊谢尔伦
  1. java内存回收机制会回收执行完run的线程的,楼主你碰到的这种情况,估计是创建线程速度太快,导致大部分创建的线程还在运行

  2. 用线程池,同@xixicat

  3. 系统能创建的线程的总数取决于操作系统,所以为了解决这个异常还是用线程池吧

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号