iOS 執行緒安全之 synchronized的用法

2021-09-09 01:57:32 字數 957 閱讀 8234

@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 執行緒安...