首页 > 代码库 > android开启线程的误区
android开启线程的误区
发现一些刚学android的人,和我当初一样,对android的线程会存在着一定误区。
在android中,开启新线程时,一些人会用以下方法:
new Handler().post(r);
但是这样并不是开启新线程,而只是把当前的任务加入到主线程当中。如果要开启新线程,则应该使用HandlerThread,使用如下:
HandlerThread thread = new HandlerThread(name);thread.start();new Handler(thread.getLooper()).post(r);
如果对此使用较多,则可以封装一个静态方法,用于获取一个以新线程执行任务的对象:
/** * 获取在新线程运行的Handler对象。 * * @param name * 线程名字。 * @return 在新线程运行的Handler对象。 */ public static Handler getNewHandlerInOtherThread(String name) { HandlerThread thread = new HandlerThread(name); thread.start(); return new Handler(thread.getLooper()); }
android开启线程的误区
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。