[英]Using Thread/Handler/Looper for Worker Thread Android
[英]How to schedule tasks in a specific thread without using a looper and a handler?
计时器创建自己的线程,而ScheduledThreadPoolExecutor
使用池。 他们是否有办法指定无需执行任何代码就可以直接执行任务的线程? 如果这不是一个好主意,请解释原因(线程正在忙碌)。
我对looper-handler方法没有问题,我很好奇。
您可以使用Executors.newSingleThreadScheduledExecutor()
使用一个线程创建ScheduledThreadPoolExecutor
。
(可选)如果希望对单个线程有更多控制,可以将ThreadFactory
作为参数传递。 线程工厂的newThread(Runnable)
方法被调用每一个执行者希望有一个新的时间Thread
应该运行在给定的情况下Runnable
(这是不是等同于Runnable
传递给执行程序的execute(...)
submit(...)
或schedule(...)
方法)。
请注意,您无法重用现有线程,因为通常无法将代码“注入”到已在运行的线程中,这在Qt中是可能的。 在那里,每个线程都有自己的事件队列和计时工具,因此您可以自由决定哪个(已经存在的)线程应该处理您的定时任务(请参阅Qt中的Timers )。
Java中没有现成的功能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.