ary*_*axt 7 memory android memory-management handler android-activity
在同一个Activity中使用多个Handler是否有任何问题.
我注意到在Android官方网站上提供的所有示例中,他们使用单个处理程序并根据"what"的值检测不同的操作,这是因为内存管理和Handler使用的大量内存?或者我应该称之为"坏代码"并以干净的方式执行(多个处理程序,每个负责特定任务)
Handler handler = new Handler()
{
@Override
public void handleMessage(Message msg) {
if (msg.what == 0){
// do something
}
else if (msg.what == 1){
// do something else
}
}
}
Run Code Online (Sandbox Code Playgroud)
要么
Handler taskHandlerA = new Handler()
{
@Override
public void handleMessage(Message msg) {
// do something
}
}
Handler taskHandlerB = new Handler()
{
@Override
public void handleMessage(Message msg) {
// do something else
}
}
Run Code Online (Sandbox Code Playgroud)
这里有一些关于Loopers和Handlers的好读物.
当Handler
被创建,它会自动与它的注册Thread
的Looper
.这让我觉得你不需要多个Handler
单独的线程.一Activity
,具体而言,一个使用多种Thread
的,可以使用多种Handler
的,但.