从Runnable中调用Runnable

时间:2014-11-05 11:59:15

标签: java multithreading threadpoolexecutor

public class MyClass implements Runnable {

    public void run(){
        // first work
        ThreadPool.getInstance().runNew(new MyClass());
        // second work
    }

}

如果我在MyClass中创建MyClass的新实例并将其发送到ThreadPoolExecutor会发生什么?我希望它是无限循环,只有一个实例在时间工作。第一个线程会立即达到“第二个工作”还是会等到下一个线程完成?

1 个答案:

答案 0 :(得分:0)

我想它会一直运行,直到无法创建新的Thread

然后JVM会抛出:

java.lang.OutOfMemoryError: unable to create new native thread
    at java.lang.Thread.start0(Native Method)
    at java.lang.Thread.start(Thread.java:592)