iOS RunLoop常駐執行緒

2021-08-07 20:16:15 字數 758 閱讀 5652

常駐執行緒的作用:

讓乙個一直存在的子執行緒,等待其他執行緒發來訊息,處理其他事件。

1.設定成全域性的,如果是執行緒物件是區域性的就會死掉
@property (strong, nonatomic) nsthread *thread;
2.初始化執行緒並啟動
self

.thread = [[nsthread alloc]initwithtarget:self selector:@selector(myrun) object:nil];

[self

.thread start];

3.啟動runloop,子執行緒的runloop預設是停止的
- (void)myrun 

[self performselector:@selector(action) onthread:self

.thread withobject:nil waituntildone:no ];

}

這樣thread這個執行緒就會一直存在,當需要使用此執行緒在處理一些事情的時候就這麼呼叫。

4.利用常駐執行緒處理事情

[self performselector:@selector(action) onthread:self

.thread withobject:nil waituntildone:no ];

在action方法中 寫下你需要處理事情的**。

iOS 常駐執行緒

如何開啟 首先開啟乙個執行緒 1 property nonatomic,strong nsthread thread 23 ibaction startaction id sender 1011 void start 1415 ibaction taskaction id sender 2425 v...

ios 執行緒休眠 iOS執行緒保活(常駐執行緒)

介紹 在日常的ios開發中,遇到卡頓也是在所難免,一般卡頓是由於主線程處理耗時長的操作而造成執行緒一直在阻塞,那麼我們可以去建立子執行緒,把耗時操作放在子執行緒去做,這樣是完全沒問題。這樣就會有乙個問題,子執行緒處理完操作之後就會被銷毀,想再處理其他事情,必須再開啟新的子執行緒。如果想要乙個子執行緒...

ios RunLoop使tableView流暢化

當我們如果想要在cell中顯示很多高畫質的大的時候如果一下子載入很多,肯定會有卡頓現象的產生,是乙個耗時操作,我們可能會想著耗時操作的話就往子執行緒中扔,但是我們是在做ui的操作,所以我們不應該放到子執行緒中。這樣的話我們應該考慮用runloop,每次迴圈我們再去載入一張,這樣的話卡頓結果就會解決,...