Android 让许多手忙脚乱的人活着,什么都不做,只是等待,这不好吗?
在我的Android项目中,我将Android 让许多手忙脚乱的人活着,什么都不做,只是等待,这不好吗?,android,multithreading,performance,android-handler,android-handlerthread,Android,Multithreading,Performance,Android Handler,Android Handlerthread,在我的Android项目中,我将Handler与HandlerThread结合使用。我在服务中使用了它们中的大多数。在那里,由低优先级的单个HandlerThread支持的处理程序在onCreated()中创建,并在onDestroy()中停止 他们中的许多人只是一直在等待。他们每五分钟处理几秒钟 我的应用程序总共有20个线程(其中一半是HandlerThreads)。那么,打开这么多线程是性能问题吗?我从中学到,它应该是正确的。我只想检查一下,这是否也适用于HandlerThread。大约20
Handler
与HandlerThread
结合使用。我在服务中使用了它们中的大多数。在那里,由低优先级的单个HandlerThread支持的处理程序在onCreated()
中创建,并在onDestroy()中停止
他们中的许多人只是一直在等待。他们每五分钟处理几秒钟
我的应用程序总共有20个线程(其中一半是HandlerThreads)。那么,打开这么多线程是性能问题吗?我从中学到,它应该是正确的。我只想检查一下,这是否也适用于HandlerThread
。大约20?可能不太坏。这可能会略微降低内核调度程序的性能,但只要不达到操作系统限制且不轮询,空闲线程就不会占用CPU。不过它们可能占用内存,因此请确保不要保留那些线程上不完全需要的任何引用。我只是使用处理程序的方法postMessage(Runnable Runnable)
,它基本上充当队列。我不扩展处理程序
或处理程序线程
。所以,我从来没有在线程中引用过任何东西。那么它的性能也不会太差。尽管从架构的角度来看,将它们转换为IntentService可能更有意义,但如果所有服务都只是将消息传递给HandlerThread。