java中使用用線程控制Task任務(wù),啟動下面的線程就可以了,new Thread(new Task()).start() ;public class
創(chuàng)新互聯(lián)專注骨干網(wǎng)絡(luò)服務(wù)器租用10年,服務(wù)更有保障!服務(wù)器租用,四川服務(wù)器托管 成都服務(wù)器租用,成都服務(wù)器托管,骨干網(wǎng)絡(luò)帶寬,享受低延遲,高速訪問。靈活、實現(xiàn)低成本的共享或公網(wǎng)數(shù)據(jù)中心高速帶寬的專屬高性能服務(wù)器。
Task implements Runnable {//新建一個任務(wù)
private TextArea textArea;
public Task(TextArea textArea){
this.textArea = textArea;
}
public void run() {
while (true) {
this.textArea.setText("這里設(shè)置: 輸出的一段文字");
try {
Thread.sleep(500); // 這里設(shè)置:隔多長時間
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
sleep是靜態(tài)方法,它的調(diào)用會引起所有進程的休眠。
在等待的進程中執(zhí)行notify()和wait()方法,在外面的進程計時,執(zhí)行夠一秒的時候放棄cpu,讓之前的線程執(zhí)行
從代碼來看,每個線程的o都不是同一個。1線程的o.wait()后,只執(zhí)行了2線程的o.notifyAll()。所以1線程會一直處于等待中。如果要達到你的要求,修改構(gòu)造函數(shù),去掉o = new Object();這句。因為這句會在每次初始化一個新線程時,改變o的指向。