2

我有四个不同的进程(不同的方法),它们分别运行并计划在不同的时间启动。此过程也可以手动启动,并且必须同时运行一个。有没有处理这种并发的队列实现?我试图避免同一个进程在队列中两次,或者两个进程同时运行。

4

2 回答 2

1

看来您正在寻找Executors.newSingleThreadScheduledExecutor()

创建一个单线程执行程序,可以安排命令在给定延迟后运行,或定期执行。(但请注意,如果该单线程在关闭前的执行过程中因失败而终止,则如果需要执行后续任务,则新线程将取代它。)任务保证按顺序执行,并且不会有多个任务处于活动状态在任何给定时间。

于 2012-12-10T20:34:58.187 回答
0

除了对并发性的需求之外,您的需求似乎更多地与这些流程的许可数量有关。如果是这种情况,您可以使用信号量。

于 2012-12-10T20:39:24.680 回答