我决定将一个后台任务分成两个线程。因此,我有一个ScheduledExecutorService
管理两个工作线程并每 3 秒定期运行它们的一个。他们执行接下来的两个任务:
- 从服务器检索数据
- 对这些数据进行一些操作
因此,在第一个线程从服务器检索大量数据后,它会将其传递给第二个工作线程,后者对其进行转换。
但我认为这是某种反模式,因为我会这样做 - 一个线程将依赖于另一个线程,从多线程应用程序设计的角度来看这是不好的。我是对还是错,这个解决方案还不错?任何解释,特别是从设计的一般观点来看,都将受到赞赏。