当前位置: 代码迷 >> Android >> 请教, 这段代码有什么作用? ( Runnable() )
  详细解决方案

请教, 这段代码有什么作用? ( Runnable() )

热度:160   发布时间:2016-04-28 00:29:57.0
请问, 这段代码有什么作用? ( Runnable() )
private final Runnable mPowerKeyEvent = new Runnable() {
    @Override
    public void run() {
             //performHapticFeedbackLw(null, HapticFeedbackConstants.LONG_PRESS, false);
             sendCloseSystemWindows(SYSTEM_DIALOG_REASON_GLOBAL_ACTIONS);
             mWindowManagerFuncs.shutdown(false);
        }
};

请问, 这段代码有什么作用? ( Runnable() )

------解决思路----------------------
runnable主要用来分线程操作封装的,就是将你要放在分线程干的活,放在runnable的run方法里,将runnable传给Thread或者ThreadPool即可
------解决思路----------------------
具体内容据Action名字推测是关闭系统窗口。
说说Runnable。这是一个Java接口在Android的对应接口,楼主的代码里是将这个接口做了匿名实现并绑定到一个Runnable变量上。
这段代码本身没有开启新的线程,只有当他结合多线程运行时才会开启新的线程。例如Thread类接受Runnable参数,再调用Thread的start可以开启线程。楼主需要补充Android并发编程知识。
Handler主要做异步消息传递的,它经常跟并发线程一起用,但是这是两样东西,作用不同。

理解了并发编程也就知道了这段Runnable的作用了:开启一个新线程做后台操作,主线程(当前线程)继续运行。
  相关解决方案