Android中的线程
16lz
2021-12-04
在 Android 平台中多线程应用很广泛,在 UI 更新、游戏开发和耗时处理(网络通信等)等方面都需要多线程。 Android 线程涉及到的技术有: Handler, Message,MessageQueue,Looper,HandlerThread。
用 new HandlerThread("MyHandlerThread") 创建 HandlerThread 线程,通过 thread.start() 方法启动该线程。 HandlerThread 的 getLooper() 方法可以获得与 HandlerThread 线程对象关联的 Looper 对象。再用 Looper 对象构建 new Handler(looper) 。
出自《Android开发案例驱动教程》
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btnEnd = (Button) findViewById(R.id.btnEnd); btnEnd.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { isRunning = false; } }); labelTimer = (TextView) findViewById(R.id.labelTimer); HandlerThread thread = new HandlerThread("MyHandlerThread"); thread.start(); handler = new Handler(thread.getLooper()); Runnable r = new Runnable() { public void run() { if (isRunning) { labelTimer.setText(" 逝去了 " +timer + " 秒 "); timer++; handler.postDelayed(this, 1000); } } }; handler.postDelayed(r, 1000); }}
用 new HandlerThread("MyHandlerThread") 创建 HandlerThread 线程,通过 thread.start() 方法启动该线程。 HandlerThread 的 getLooper() 方法可以获得与 HandlerThread 线程对象关联的 Looper 对象。再用 Looper 对象构建 new Handler(looper) 。
出自《Android开发案例驱动教程》
更多相关文章
- Android获取其他包的Context实例
- Android(安卓)ListView移动至指定行
- Android之collection(集合)
- JS判断Android、iOS或浏览器的多种方法(四种方法)
- Android学习之文件存储
- Android的消息机制,用Android线程间通信的Message机制,Android中Ha
- 详解Android(安卓)触摸事件处理和传递过程的来龙去脉
- 浅谈Android中的线程的通信及Handle机制
- 详解Android(安卓)触摸事件处理和传递过程的来龙去脉