java - unable to create new native thread
怪我咯
怪我咯 2017-04-18 09:31:15
0
2
979

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

怪我咯
怪我咯

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

모든 응답(2)
小葫芦

Java 스레드 풀 사용

伊谢尔伦
  1. Java 메모리 재활용 메커니즘은 실행이 완료된 스레드를 재활용합니다run. 이러한 상황에서는 스레드 생성 속도가 너무 빨라서 생성된 스레드 중 대부분이 여전히 실행 중인 것으로 추정됩니다.

  2. @xixicat과 동일한 스레드 풀 사용

  3. 시스템이 생성할 수 있는 총 스레드 수는 운영체제에 따라 다르므로 이 예외를 해결하려면 스레드 풀을 사용하세요

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿