3 回答

TA貢獻1873條經(jīng)驗 獲得超9個贊
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
// code goes here.
}
});
t1.start();
要么
new Thread(new Runnable() {
@Override
public void run() {
// code goes here.
}
}).start();
要么
new Thread(() -> {
// code goes here.
}).start();
要么
Executors.newSingleThreadExecutor().execute(new Runnable() {
@Override
public void run() {
myCustomMethod();
}
});
要么
Executors.newCachedThreadPool().execute(new Runnable() {
@Override
public void run() {
myCustomMethod();
}
});

TA貢獻1843條經(jīng)驗 獲得超7個贊
在Java 8中,您可以使用一行代碼來完成此操作。
如果您的方法不帶任何參數(shù),則可以使用方法參考:
new Thread(MyClass::doWork).start();
否則,您可以在lambda表達(dá)式中調(diào)用該方法:
new Thread(() -> doWork(someParam)).start();
添加回答
舉報