国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Android - Android多線程處理機(jī)制中的Handler使用介紹

Android多線程處理機(jī)制中的Handler使用介紹

2021-01-25 14:55Android開(kāi)發(fā)網(wǎng) Android

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

接下來(lái)讓我介紹Android的Handler的使用方法。Handler可以發(fā)送Messsage和Runnable對(duì)象到與其相關(guān)聯(lián)的線程的消息隊(duì)列。每個(gè)Handler對(duì)象與創(chuàng)建它的線程相關(guān)聯(lián),并且每個(gè)Handler對(duì)象只能與一個(gè)線程相關(guān)聯(lián)。

Handler一般有兩種用途:1)執(zhí)行計(jì)劃任務(wù),你可以再預(yù)定的實(shí)現(xiàn)執(zhí)行某些任務(wù),可以模擬定時(shí)器。2)線程間通信。在Android的應(yīng)用啟動(dòng)時(shí),會(huì)創(chuàng)建一個(gè)主線程,主線程會(huì)創(chuàng)建一個(gè)消息隊(duì)列來(lái)處理各種消息。當(dāng)你創(chuàng)建子線程時(shí),你可以再你的子線程中拿到父線程中創(chuàng)建的Handler對(duì)象,就可以通過(guò)該對(duì)象向父線程的消息隊(duì)列發(fā)送消息了

MainActivity.java
[java]

復(fù)制代碼 代碼如下:


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發(fā)送的消息
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// msg.what操作獲取發(fā)送什么消息,根據(jù)消息的標(biāo)識(shí),進(jìn)行不同處理方式
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方法執(zhí)行完畢 線程就死掉
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
try {
System.out.println("子線程----"
+ Thread.currentThread().getName());
Thread.sleep(1000);
// 發(fā)送消息 what標(biāo)識(shí)
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發(fā)送的消息
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// msg.what操作獲取發(fā)送什么消息,根據(jù)消息的標(biāo)識(shí),進(jìn)行不同處理方式
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方法執(zhí)行完畢 線程就死掉
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
try {
System.out.println("子線程----"
+ Thread.currentThread().getName());
Thread.sleep(1000);
// 發(fā)送消息 what標(biāo)識(shí)
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;
}
}

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 日本不卡免费新一二三区 | 操操操操操操操 | 欧美女人性 | 国产久 | 吴梦梦到粉丝家实战华中在线观看 | 久在线视频 | 不卡视频一区二区 | 日韩成人在线视频 | 91在线免费视频 | 国内精品一区二区 | 久久青青 | 亚洲一区二区av | 在线国产小视频 | 日日爱视频 | 亚洲精品免费看 | 国产日韩久久 | 国产精品视频网 | 后人极品翘臀美女在线播放 | 一区二区在线不卡 | 国产韩国精品一区二区三区 | 最新毛片在线观看 | 色吊丝在线永久观看最新版本 | 亚洲激情网站 | 国产午夜精品一区二区三区嫩草 | 五月天导航 | 欧美伊人 | 日韩精品视频在线 | 久久精品中文字幕 | 综合色婷婷 | 午夜影院免费 | 日本中文字幕在线观看 | 最新国产精品 | 亚洲一区二区三区四区五区中文 | 日韩三级在线免费观看 | 一区二区三区动漫 | 一区二区国产精品 | 国产精品欧美一区二区三区 | 99久久精品免费看国产一区二区三区 | 亚洲视频综合 | 欧美一区二区三区在线 | 青青草国产在线 |