主线程;执行初始应用程序代码。工作线程;执行耗时的后台任务。
但是工作线程和主线程在基于Java的智能设备中会减少响应延迟或增加工作负载吗?
发布于 2020-02-01 08:03:10
在我看来,将工作线程与主线程一起使用会增加基于Java的智能设备中的工作负载:
原因:
工作线程是连续的并行线程,它运行并接受消息或处理,直到给定的循环时间显式完成(关闭或终止)。当工作线程被创建时,它等待任务(进程或消息)。当它获取任务(处理器或消息)时,它开始在给定循环中处理给定的消息或处理器。任务运行(完成或终止)后,它将再次等待新任务。它将每隔几毫秒定期检查任务(流程或消息)的可用性。如果我们试图分配另一个任务,而它仍然忙于当前任务,那么它将抛出一个异常“已在运行任务!”Work Thread完全负责执行任务,它不会在未完成给定时间或循环的情况下释放给定任务。它也不允许另一个进程干扰。
发布于 2020-01-31 14:22:50
我想这会对你有帮助的。
“是的,将工作线程与主线程一起使用将减少响应延迟,线程允许更大规模和更高效率地利用多处理器体系结构。线程使用它们工作的操作系统的资源非常少。也就是说,线程不需要新的地址空间、全局数据、程序代码或操作系统资源。主线程负责应用程序启动后屏幕上发生的所有事情。您的应用程序UI的响应性,您不会阻塞UI线程。如果您要执行的操作不是即时的,则应确保在单独的工作线程中执行这些操作。”
https://stackoverflow.com/questions/59991028
复制