0

我试图在 main 方法中启动一个线程,但是当我启动线程时它不会调用 run 方法。我认为这可能与在线程中启动线程有关:

package com.audiack.theForest;

public class theForestThread implements Runnable {
    private static int theBeginningTimes = 0;
    private static TheBeginning theBeginning = new TheBeginning();
    public static void main(String args[]){
        Thread thread = new Thread();
        thread.start();
    }
    @Override
    public void run() {
        theBeginning.start(theBeginningTimes);
        theBeginningTimes++;
    }
}
4

2 回答 2

2

您正在开始一个Thread没有Runnable, 即。使用Thread' 的run()实现,它是空的。

您需要将类的实例传递给新Thread对象的构造函数。

public static void main(String args[]){
    Thread thread = new Thread(new theForestThread());
    thread.start();
}
于 2013-09-27T14:10:57.507 回答
1

尝试下一个:

new Thread(new(theForestThread())).start();

在http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html中查看更多信息

于 2013-09-27T15:53:12.370 回答