激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Android - Android多線程處理機制中的Handler使用介紹

Android多線程處理機制中的Handler使用介紹

2021-01-25 14:55Android開發網 Android

本文將為大家介紹下Android的Handler的使用方法,Handler可以發送Messsage和Runnable對象到與其相關聯的線程的消息隊列,感興趣的朋友可以了解下哈

接下來讓我介紹Android的Handler的使用方法。Handler可以發送Messsage和Runnable對象到與其相關聯的線程的消息隊列。每個Handler對象與創建它的線程相關聯,并且每個Handler對象只能與一個線程相關聯。

Handler一般有兩種用途:1)執行計劃任務,你可以再預定的實現執行某些任務,可以模擬定時器。2)線程間通信。在Android的應用啟動時,會創建一個主線程,主線程會創建一個消息隊列來處理各種消息。當你創建子線程時,你可以再你的子線程中拿到父線程中創建的Handler對象,就可以通過該對象向父線程的消息隊列發送消息了

MainActivity.java
[java]

復制代碼 代碼如下:


package com.example.thread;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView tv;
// 消息處理者
private Handler handler;
private static final int TURNTEXT = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
System.out.println("主線程----" + Thread.currentThread().getName());
tv = new TextView(this);
tv.setText("你好");
setContentView(tv);
// 處理者
handler = new Handler() {
// handlerMessage方法處理handler發送的消息
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// msg.what操作獲取發送什么消息,根據消息的標識,進行不同處理方式
int what = msg.what;
if (what == TURNTEXT) {
tv.setText(System.currentTimeMillis() + "");
}
}
};
try {
//主線程 阻塞 6s 大于
Thread.sleep(10000);
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//run方法執行完畢 線程就死掉
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
try {
System.out.println("子線程----"
+ Thread.currentThread().getName());
Thread.sleep(1000);
// 發送消息 what標識
handler.sendEmptyMessage(TURNTEXT);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}).start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
package com.example.thread;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView tv;
// 消息處理者
private Handler handler;
private static final int TURNTEXT = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
System.out.println("主線程----" + Thread.currentThread().getName());
tv = new TextView(this);
tv.setText("你好");
setContentView(tv);
// 處理者
handler = new Handler() {
// handlerMessage方法處理handler發送的消息
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// msg.what操作獲取發送什么消息,根據消息的標識,進行不同處理方式
int what = msg.what;
if (what == TURNTEXT) {
tv.setText(System.currentTimeMillis() + "");
}
}
};
try {
//主線程 阻塞 6s 大于
Thread.sleep(10000);
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//run方法執行完畢 線程就死掉
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
try {
System.out.println("子線程----"
+ Thread.currentThread().getName());
Thread.sleep(1000);
// 發送消息 what標識
handler.sendEmptyMessage(TURNTEXT);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}).start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 天天色狠狠干 | 免费看成年人视频在线 | 成人在线视频免费观看 | 久久久成人999亚洲区美女 | 精品国产精品久久 | 新久草在线视频 | 欧美精品一区二区三区在线 | julieann艳星激情办公室 | 国产女同玩人妖 | 日韩一级片一区二区三区 | 欧美另类激情 | 久久午夜免费视频 | 欧美18—19sex性hd按摩 | 久久久久久久免费精品 | 欧美激情天堂 | 免费久久久久久 | 艹男人的日日夜夜 | 欧美精品免费一区二区三区 | 成人免费福利视频 | 国产成人av在线播放 | 日本成人在线免费 | 毛片韩国| 毛片免费视频观看 | 久久婷婷一区二区三区 | 国产精品久久久久久久久久久天堂 | 一二区成人影院电影网 | 亚洲第一成人在线视频 | 久久男人| 欧美性成人 | 得得啪在线视频 | 在线中文资源免费 | 国产噜噜噜 | 毛片免费试看 | 蜜桃成品人免费视频 | 日韩毛片网站 | 国产又白又嫩又紧又爽18p | 色猫av | 国产精品成人一区二区三区电影毛片 | 毛片在线视频在线播放 | 爽爽淫人综合网网站 | 国产精品高潮视频 |