執行緒的讓步與阻塞
執行緒的讓步
public class Test{
public static void main(String[] args){
Xc1 xc=new Xc1();
Thread aa=new Thread(xc);
Thread bb=new Thread(xc);
aa.setName("執行緒一");
bb.setName("執行緒二");
aa.start();
bb.start();
}
}
class Xc1 implements Runnable{
public void run(){
for(int i=0;i<15;i++){
System.out.println(Thread.currentThread().getName()+" "+i);
if(i%5==0){
Thread.yield();
}
}
}
}
執行緒的阻塞
public class Test{
public static void main(String[] args){
Xc1 xc=new Xc1();
Thread aa=new Thread(xc);
aa.start();
//阻塞時將當前執行緒暫停,直至呼叫join函式所對應的執行緒執行完畢,才繼續執行程式
try{
aa.join();
}
catch(Exception e){
}
for(int i=0;i<10;i++){
System.out.println("主執行緒"+i);
}
}
}
class Xc1 implements Runnable{
public void run(){
for(int i=0;i<5;i++){
System.out.println("子執行緒"+i);
}
}
}
相關文章
- Java 多執行緒基礎(八)執行緒讓步Java執行緒
- 聊聊執行緒與程式 & 阻塞與非阻塞 & 同步與非同步執行緒非同步
- 程式與執行緒、同步與非同步、阻塞與非阻塞、併發與並行執行緒非同步並行
- 非同步/同步,阻塞/非阻塞,單執行緒/多執行緒概念梳理非同步執行緒
- 伺服器模型——從單執行緒阻塞到多執行緒非阻塞(下)伺服器模型執行緒
- 伺服器模型——從單執行緒阻塞到多執行緒非阻塞(中)伺服器模型執行緒
- java多執行緒:執行緒池原理、阻塞佇列Java執行緒佇列
- Java 執行緒中斷(interrupt)與阻塞 (park)的區別Java執行緒
- suging閒談-netty 的非同步非阻塞IO執行緒與業務執行緒分離Netty非同步執行緒
- 執行緒池的阻塞佇列的理解執行緒佇列
- 多執行緒與併發-----條件阻塞Condition的應用執行緒
- mysql 5.7 執行緒阻塞處理MySql執行緒
- 程式執行緒、同步非同步、阻塞非阻塞、併發並行執行緒非同步並行
- java多執行緒8:阻塞佇列與Fork/Join框架Java執行緒佇列框架
- 對執行緒、協程和同步非同步、阻塞非阻塞的理解執行緒非同步
- 執行緒與多執行緒執行緒
- 單執行緒-非阻塞-長連結執行緒
- 非同步阻塞,Manager模組,執行緒非同步執行緒
- 多執行緒,執行緒類三種方式,執行緒排程,執行緒同步,死鎖,執行緒間的通訊,阻塞佇列,wait和sleep區別?執行緒佇列AI
- 多執行緒------執行緒與程式/執行緒排程/建立執行緒執行緒
- 執行緒、執行緒與程式、ULT與KLT執行緒
- 併發-0-同步/非同步/阻塞/非阻塞/程式/執行緒非同步執行緒
- java效能調優記錄(執行緒阻塞)Java執行緒
- [譯] 多執行緒簡介:一步一步來接近多執行緒的世界執行緒
- 深入理解JVM(③)執行緒與Java的執行緒JVM執行緒Java
- Java併發 之 執行緒池系列 (1) 讓多執行緒不再坑爹的執行緒池Java執行緒
- 【多執行緒總結(二)-執行緒安全與執行緒同步】執行緒
- 一步步瞭解執行緒池之基本執行緒池-ThreadPoolExecutor執行緒thread
- Java BlockingQueue 阻塞佇列[用於多執行緒]JavaBloC佇列執行緒
- Java多執行緒學習(1)建立執行緒與執行緒的生命週期Java執行緒
- Android程式框架:執行緒與執行緒池Android框架執行緒
- 子執行緒與UI執行緒的通訊(委託)執行緒UI
- 一步步瞭解執行緒池之單核執行緒池-SingleThreadPool執行緒單核thread
- 執行緒與執行緒池的那些事之執行緒池篇(萬字長文)執行緒
- 【java】【多執行緒】睡眠/守護/加入/禮讓執行緒,執行緒優先順序(4)Java執行緒
- Java多執行緒學習(3)執行緒同步與執行緒通訊Java執行緒
- 程式與執行緒執行緒
- Java與執行緒Java執行緒