多執行緒 NSThread

2021-06-28 06:27:06 字數 1021 閱讀 4532

我們想要載入網路上的一張

#define url_imag @""
然後初始化按鈕和乙個沒有的imageview(也可以再加乙個lable顯示資訊)

主線程直接載入:

self.imageview.image = [uiimage imagewithdata:[self loaddatawithurl:url_imag]];
子執行緒載入:

//nsthread (子執行緒直接在主線程裡面載入)

// [self performselectorinbackground:@selector(loaddatawithurl:) withobject:url_imag];

//開闢乙個執行緒讓某個物件調某個方法(快速簡單)

// [nsthread detachnewthreadselector:@selector(loaddatawithurl:) totarget:self withobject:url_imag];

//用這種方式要手動開啟執行緒 (這樣寫的執行緒是可控制的)

nsthread *thread = [[nsthread alloc]initwithtarget:self selector:@selector(loaddatawithurl:) object:url_imag];

// thread.name = @"test thread";

[thread start];

載入的方法:

#pragma mark - others

- (nsdata *)loaddatawithurl:(nsstring *)string

- (void)updataimagviewwithdata:(nsdata *)data

效果:

iOS 多執行緒 NSThread

ibaction startthreadbuttonpressed uibutton sender 建立新的執行緒,執行緒的函式為 startthebackgroundjob.具體的 startthebackgroundjob 函式定義如下.void startthebackgroundjob 在第...

NSThread建立多執行緒

乙個nsthread的物件就代表乙個執行緒。建立 啟動執行緒 nsthread thread nsthread alloc initwithtarget self selector selector download object nil thread start 主線程的相關用法 nsthread...

iOS 多執行緒 NSThread

nsthread thread nsthread alloc initwithtarget self selector selector run object nil thread start nsthread mainthread 獲得主線程 bool ismainthread 是否為主執行緒 b...