主線程給子執行緒傳送訊息

2021-07-11 08:42:50 字數 628 閱讀 8868

/建立乙個子執行緒,用於主線程向子執行緒傳送訊息

class

mythread

extends

thread

@override

public

void run()

};//啟動looper

looper.loop();

}}}

case r.id

.btn3:

//將執行緒申明為全域性變數 使用第一種傳送訊息方法

//注意:哪個執行緒給哪個執行緒發,就呼叫接收方的handler

message message =thread.gethandler().obtainmessage();

message.arg1=89

; thread.gethandler().sendmessage(message);

break

; }

//一開始先啟動執行緒????

thread

=new mythread();

thread

.start();

主線程和子執行緒

子執行緒通過 handlerthread的thread.getlooper 繫結,在主線程的handler的handlermessage中呼叫threadhandler.sendmessagedelay msg,1000 向子執行緒傳送訊息。在子執行緒中通過handler.sendmessagede...

主線程和子執行緒

主線程負責管理由它建立的子執行緒,建立 啟動 掛起 停止等。主線程通過發訊息的方式管理子執行緒,例如,給子執行緒傳送start 訊息,子執行緒啟動,子執行緒執行入口的run 方法。thread有下面兩個構造方法 thread runnable target,string name thread ru...

主線程和子執行緒總結

執行結果 從上面可以看到 如果主線程和子執行緒是並行的,雖然都是用while 1 但是倚靠 cpu的排程,主線程和子執行緒都有機會得到執行。如果要在子執行緒裡面改變主線程裡面的資料,就在 pthread create 裡面的最後 乙個引數使用傳位址呼叫 void c,否則使用傳值呼叫 void c ...