原生线程会在堆以外的内存创建,因此受到本地物理内存的限制不能创建更多线程
package online.javabook.jvm.garbage.thread.thread.oome;/*** https://www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html** Exception in thread "main" java.lang.OutOfMemoryError: unable to create new native thread* at java.lang.Thread.start0(Native Method)* at java.lang.Thread.start(Thread.java:717)* at online.javabook.jvm.garbage.thread.thread.oome.JvmOutOfMemoryErrorOfThreadDemo.main(JvmOutOfMemoryErrorOfThreadDemo.java:39)** 原生线程会在堆以外的内存创建,因此受到本地物理内存的限制不能创建更多线程** @author Summer Lu* @email gmluyang@gmail.com* @date 2014-8-22**/public class JvmOutOfMemoryErrorOfThreadDemo {/*** @param args* @throws InterruptedException*/public static void main(String[] args) throws InterruptedException {//Thread.sleep(30000);int count = 1;while(count>0){Thread thread = new Thread(count+""){public void run() {try {System.out.println(Thread.currentThread());Thread.sleep(1000*3600*24);} catch (Exception e) {e.printStackTrace();}};};thread.start();count++;}}}
Exception in thread "main" java.lang.OutOfMemoryError: unable to create new native threadat java.lang.Thread.start0(Native Method)at java.lang.Thread.start(Thread.java:717)at online.javabook.jvm.garbage.thread.thread.oome.JvmOutOfMemoryErrorOfThreadDemo.main(JvmOutOfMemoryErrorOfThreadDemo.java:39)
