同步:多個任務依次按順序執行
非同步:多個任務可以時執行
程序:乙個正在執行的應用程式就是乙個程序,為應用開闢記憶體空間
執行緒:乙個程序可以有多個執行緒,是程序的基本執行單元,執行應用的**/任務
nsthread:
建立執行緒
方法一:物件方法
nsthread *thread = [[nsthread alloc]initwithtarget:self selector:@selector(demo:) object:@"mm"];
[thread start];
方法二:類方法
[nsthread detachnewthreadselector:@selector(demo:) totarget:self withobject:@"mm"];
方法三[self performselectorinbackground:@selector(demo:) withobject:@"mm"];
-(void)demo:(nsstring *)strelseelse{
nslog(@"結束");
break;
會出現資源混亂:解決方法(互斥鎖:使用的技術就是執行緒同步技術)能夠有效防止多執行緒搶奪資源造成的資料安全問題
執行緒同步:多執行緒按順序的執行任務;
互斥鎖:@synchronized(1.必須繼承與nsobject 2.必須是全域性變數《一般設為self>) {
要執行**;
注意:加鎖後執行緒的執行效率會比不加鎖低,但保證了同時操作全域性變數的安全性
多執行緒 相關知識
多執行緒 目標程序 執行緒程序 對應的就是計算機中執行的應用程式 process p new process p.startinfo.filename notepad.exe p.start 通過例項物件來開啟記事本 process ps process.getprocesses foreach p...
多執行緒知識學習
我們現在寫乙個買票的多執行緒。例子 public class sellticket implements runnable catch interruptedexception e system.out.println thread.currentthread getname 正在銷售第 ticke...
多執行緒 二 使用多執行緒的準備知識
一 為什麼要使用多執行緒?使計算機所有資源在執行任務的時候能夠全部利用上,以提公升計算機資源利用率的方式來提公升系統執行效率 cpu的單核執行速度由於硬體技術問題已經遇到瓶頸,而概念性的 光腦 貌似離我們還很遙遠,現在的計算機效能提公升方向是向多核發展。多核同時工作,協同完成任務。大家熟知的神威 太...