線程之間運(yùn)行時獨(dú)立的,主線程結(jié)束,其他線程不受影響?
實現(xiàn)2中方式:
1 extends Thread ?重寫run方法
2 實現(xiàn)Runnable ?接口 ?重寫run方法
main 執(zhí)行在主線程
主要使用Runnable
1 ?一個類可以實現(xiàn)多個接口
2 ?實現(xiàn)資源的共享


join() ? ?一個線程等待要加載的線程完成之后再執(zhí)行
?join(1500) 一個線程等待1.5s ?,不管有沒有完成,都會繼續(xù)執(zhí)行
sleep ? 會給其他線程機(jī)會,不會理會其他線程優(yōu)先級
yield ? ?只會給優(yōu)先級相同或者更高的線程機(jī)會
前臺線程死亡? 后臺線程也自動死亡
后臺線程 ? ? dt.setDaemon(true);
public class DemonDemo {
public static void main(String[] args) {
DemonThread? dt=new DemonThread();
dt.setDaemon(true);
dt.start();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class DemonThread extends Thread {
@Override
public void run() {
for(int i = 0; i < 10; i ++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(getName() + i);
}
}
}