没有合适的资源?快使用搜索试试~ 我知道了~
Android Message Queue
需积分: 5 0 下载量 27 浏览量
2022-05-01
20:39:53
上传
评论
收藏 197KB DOC 举报
温馨提示
试读
14页
Android Message Queue
资源详情
资源评论
资源推荐
活用 Android 的 Message Queue(1/3)
的角色
在你的 程式裡,新誕生一個線程,或稱執行緒時,並不會自動建立其
。
裡並沒有 的 資料結構,例如,不同 裡的物件不能
透過 來交換訊息。
一個線程可以誕生一個 之物件,由它來管理此線程裡的 。
你可以誕生 之物件來與 溝通,以便 新訊息到 裡;
或者接收 從 取出所送來的訊息。
線程 的 物件參考可以傳遞給別的線程,讓別的線程 或 等能送訊息來給線程
存於 的 裡。
線程 的 裡的訊息,只有線程 所屬的物件可以處理之。
使用 ! 可以取得目前線程的 物件參考值。
使用 "new#$%myLooper&可誕生用來處理目前線程
的 物件;其中,#$% 是 的子類別。
使用 "new#$%getMainLooper()&可誕生用來處理
線程的 物件;其中,#$% 是 的子類別。
'範例之一: 物件之角色
類別用來管理特定線程內物件之間的訊息交換#()。你的應用
程式可以誕生許多個線程,或稱執行緒。而一個線程可以誕生許多個物件,這些物件
之間常常需要互相交換訊息。如果有這種需要,您可以替線程誕生一個 類別之物件,
來擔任訊息交換的管理工作。 物件會建立一個 資料結構來存放各物
件傳來的訊息包括 *+ 事件或 ,!% 事件等。如下圖:
每一個線程,或稱「執行緒」裡可含有一個 物件以及一個
資料結構。在你的應用程式裡,可以定義 的子類別來接收
所送出的訊息。
//----- Looper_01
範例
-----
package) -(./&
import)%$%!&
import)&
import&
import&
import&
import&
import$010&
import$0102)-%&
import0%%%&
import0%!%&
import0%(%10&
publicclass).extends)%$%!implements2)-%3
privatenalint4"!%!% WRAP_CONTENT&
privatenalint5"!%!% FILL_PARENT&
public(%10%$&
private#$% &
private%%%6%'6%7&
publicvoid%))3
super%))&
!%!%"new!%this&
!%%2%%!%VERTICAL&
%"new%%this&
%%+.&
%%)-8)80heart&
%%(%9%%9&
%%2)-%this&
!%!% "
new!%!% ..6:.&
%".&
!%10%6 &
%'"new%%this&
%'%+.'&
%'%)-8)80ok_blue&
%'%(%9(%9&
%'%2)-%this&
!%10%'6 &
%$"new(%10this&
%$%(%WHITE&
%$%(%99&
!%!% '"
new!%!% 564&
'%".&
!%10%$6 '&
%%%10!%&
;
publicvoid)-10$3
switch$%+3
case.<
&
"myLooper&
"new#$%&
$.&
==清除整個 裡的事件,確保不會通知到別人
,%>"9 ! ?9&
" %666>&
==組裝成一個 物件
&
==將 物件送入 裡
break&
case.'<
@&
break&
;
;
==AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
class#$%extends
3
public#$%3
super&
;
B2$
publicvoid 3
%$%(%,% >&
;
;
;
==AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
說明:
此程式啟動時,目前線程即主線程6 %已誕生了一個 物件,並且有了
一個 資料結構。
指令:"myLooper&
就呼叫 類別的靜態 !函數,以取得目前線程裡的 物件之參考值。
指令: "new#$%&
誕生一個 #$% 之物件來與 溝通。)%$%! 等物件可以藉由 #$%
物件來將訊息傳給 ,然後放入 裡;#$% 物件也扮演
% 的角色,可接收 物件所送來的訊息。如下圖:
指令: " %666>&
先誕生一個 物件,並將資料存入次物件裡。
指令: &
就透過 物件而將訊息 傳給 ,然後放入 裡。
此時, 物件看到 裡有訊息 ,就將它廣播出去, 物件接
到此訊息時,會呼叫其 函數來處理之,於是輸出9 ! ?9於
畫面上,如下:
剩余13页未读,继续阅读
myspor
- 粉丝: 26
- 资源: 75
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- MyBatis 动态 SQL:灵活而强大的查询构建器.pdf
- com.accordion.prettyo.apk
- 毕业设计:基于SSM的mysql-ssm软件bug管理系统(源码 + 数据库 + 说明文档)
- MTSQL8.0.35windows(64bit)-mysql-installer-community-8.0.35.0
- 人工智能引领音乐创作新时代之Suno AI
- Public-bicycle-usage-forecast-master.zip
- 通道处理过程模拟:从理论到实践.pdf
- 数据库第七次作业E-R图第一题
- 大厂面试真题Java语法基础面试专题及答案
- IMG20240428211124.jpg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0