1
. 執行緒小例子
/**2.同步**方法 實現賣票* 失去一日甚易,欲得回已無途!
* 2016-11-17下午1:43:51
* * 程序:可以包含乙個或者多個執行緒! cpu上 真正 執行的 是 執行緒!
* * 實現多執行緒的方法:
* 01.繼承thread類 重寫run()
* 02.實現runnable介面 重寫run()
* * 多執行緒:在單個程式中,同時執行多個執行緒來完成不同的工作! 多個執行緒 併發 執行的技術!
* * 併發:在同乙個時間段中 有幾個程式 都處於 啟動執行 到 執行完畢 之間!
* 計算機同時執行幾個程式,或者執行同乙個程式的多個程序或者執行緒!
* 各就各位 ,預備! 跑!
* 運動員的狀態??? 併發!
* 秋季 是感冒的高發期!
* * 在乙個確定的事件點! 只能有乙個執行緒在執行!
*
* run()和start()區別:
* run():就是類中的乙個普通方法,如果兩個類中都有run(),那麼肯定是乙個run()執行完畢之後才會執行另乙個run();
* 修飾符必須是public! 返回值型別 必須是 void!
*
* start():只有執行start()才算是啟動執行緒!這是乙個就緒狀態!缺省會執行run();無需等待run()中的內容全部執行完畢!
* 在呼叫start()並沒有立即執行run()!而是在乙個不確切的時間執行!cpu分配時間片給當前執行緒時,
* 當前執行緒才執行run()裡面的**!
* * 執行緒的生命週期:
* 1.新生
* thread01 thread01=new thread01();
* 2.就緒
* thread01.start();
* 3.執行
* cpu分配時間片給thread01的時候,執行run()
* 4.阻塞
* sleep(); wait()
* 5.死亡
* 001.正常 run()執行完畢後 正常的退出
* 002.異常 run()執行的過程中,出現異常情況,非正常的退出!
*
*執行緒的優先順序!
* 預設值 是 5,最小值 1, 最大值 10!
* thread01.setpriority(9);
*/public class mythread
}//01. 繼承thread 重寫run()
class thread01 extends thread
count++;}}
}//02. 實現runnable介面 重寫run()
class thread02 implements runnable
count++;}}
}
public class saleticket implements runnable3.同步try catch (interruptedexception e)
}@override
public void run()
}public static void main(string args)
}
**塊方法實現賣票
public class saleticket implements runnable4.小總結try catch (interruptedexception e) }}
public static void main(string args)
}
/*runnable thread callable future 多執行緒 runnable 與 callable 區別
01.runnable預設規定執行的方法時run();callable預設規定執行的方法時call();
02.runnable的run()沒有返回值,callable中的call()具有返回值
03.run()不能宣告異常!必須內部處理! call()可以宣告異常
04.執行callable的時候可以 拿到乙個future物件 !
future是乙個模式!
核心思想====》 原本需要等待的時間段,現在可以去做一些其他的業務邏輯!
假設 現在有乙個 具有返回值的a() 還有乙個b() 和c()
之前我們呼叫a() 必須等待a()返回結構之後 才能呼叫 b()或者c()
現在我們呼叫a() 不須等待a()返回結構之後 也能呼叫 b()或者c() future
*/5.驗證同步方法的鎖
public class a implements runnable catch (interruptedexception e)驗證同步方法的鎖system.out.println("結束......");
} @override
public void run()
public static void main(string args) }}
6.驗證同步**塊的鎖
public class a implements runnable catch (interruptedexception e)system.out.println("結束......");}}
@override
public void run()
public static void main(string args) }}
多執行緒例子
coding utf 8 import threading import queue import time import random from faker import faker class mythread threading.thread 執行緒模型 def init self,queue...
POSIX執行緒多執行緒例子
include include include include define num threads 6 void thread function void arg int main sleep 1 printf waiting for threads to finish.n for lots of...
多執行緒實例子
class threaddemo1 catch exception e system.out.println main thread.currentthread getname testthread tt new testthread tt.start tt.start tt.start tt.st...