@synchronized 的作用是建立乙個互斥鎖,保證此時沒有其它執行緒對self物件進行修改。這個是objective-c的乙個鎖定令牌,防止self物件在同一時間內被其它執行緒訪問,起到執行緒的保護作用。
例如:乙個電影院,有3個售票員。一場電影的總數量固定。3個售票員售票時,要判斷是非還有餘票。
#import"viewcontroller.h
"@inte***ce
viewcontroller ()
/** 售票員01
*/@property (nonatomic, strong) nsthread *thread01;
/** 售票員02
*/@property (nonatomic, strong) nsthread *thread02;
/** 售票員03
*/@property (nonatomic, strong) nsthread *thread03;
/** 票的總數
*/@property (nonatomic, assign) nsinteger ticketcount;
/** 鎖物件
*///
@property (nonatomic, strong) nsobject *locker;
@end
@implementation
viewcontroller
- (void
)viewdidload
- (void)touchesbegan:(nsset *)touches withevent:(uievent *)event
- (void
)saleticket
else}}
}@end
iOS開發多執行緒 執行緒安全
資源共享 1塊資源可能會被多個執行緒共享,也就是多個執行緒可能會訪問同一塊資源 比如多個執行緒訪問同乙個物件 同乙個變數 同乙個檔案 當多個執行緒訪問同一塊資源時,很容易引發資料錯亂和資料安全問題 示例一 示例二 問題 import viewcontroller.h inte ce viewcont...
iOS開發多執行緒篇 執行緒安全
一 多執行緒的安全隱患 資源共享 1塊資源可能會被多個執行緒共享,也就是多個執行緒可能會訪問同一塊資源 比如多個執行緒訪問同乙個物件 同乙個變數 同乙個檔案 當多個執行緒訪問同一塊資源時,很容易引發資料錯亂和資料安全問題 示例一 示例二 問題 1 2 05 執行緒安全4 5 6 7 89 10 im...
iOS開發多執行緒篇 執行緒安全
ios開發多執行緒篇 執行緒安全 一 多執行緒的安全隱患 資源共享 1塊資源可能會被多個執行緒共享,也就是多個執行緒可能會訪問同一塊資源 比如多個執行緒訪問同乙個物件 同乙個變數 同乙個檔案 當多個執行緒訪問同一塊資源時,很容易引發資料錯亂和資料安全問題 示例一 示例二 問題 1 2 05 執行緒安...