Java执行器-单线程多任务

BAR*_*BAR 5 java executor

执行程序可以在单个线程上运行多个任务吗?

显然,只有在一个物理核心上运行才能同时执行任务,但是有没有办法等待或让步,以便其他提交的任务可以运行?

如果没有等待,那么一个人通常还能确定另一项任务何时运行?

Jer*_*ews 3

是的。

当前的实现没有。

不。

;)

请考虑有关 SingleThreadExecutor 的文档 ( http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/Executors.html#newSingleThreadExecutor() ),以及StackOverflow 上使用 SingleThreadExecutor 在任务之间等待的文档。

您可以在线程之间实现自己的线程共享锁,并在多线程执行器上运行它们......但是如果您希望其他人的实现做到这一点,那么据我所知,您就不走运了。