我想使用 ThreadPoolExecutor 之类的东西来管理在可用线程上运行的一堆任务。这些任务都是同一类型,但处理不同的帐户。可以定期添加这些帐户的新任务,我希望它检查并且不允许新任务启动,直到同一帐户的旧任务已经完成。最好的方法是什么?
例子
帐户“234”的任务已启动(通过 ThreadPoolExecutor.execute())
帐户“238”的任务已启动(通过 ThreadPoolExecutor.execute())
帐户“234”的新任务已创建但未添加执行,因为第一个“234”任务未完成(最好的检查方法?)
帐户“238”的任务完成
帐户“238”的新任务启动(通过 ThreadPoolExecutor.execute()),因为当前没有为该帐户运行
最好的方法是什么?只需让它用 wait/sleep() 检查 Runnable 中的某些检查变量,以完成“234”的第一个任务吗?还是有更好的解决方案?