0

我有 4 个独立的过程需要一个接一个地进行。

第一工序 第二工序 第三工序 第四工序

由于每个进程都相互连接,因此每个进程都应该在他完成之前在一个进程之后运行。

每个进程都有自己的可变长度,随着程序数据输入的增长而变化。

但有些草图会是这样的

程序运行

第一个过程 - 持续 10 秒

第二个进程 - 有 300 个 HTTP 获取请求,过去 3 分钟

第三个进程 - 有 600 个 HTTP 获取请求,持续 6 分钟

第四个过程 - 持续 1 分钟

程序是用java编写的

感谢您的任何回答!

4

1 回答 1

2

Java API 中没有针对您的用例的并发支持,因为您所要求的与并发相反。您有一组四个相互依赖的操作,需要按特定顺序运行。您只需要并且可能应该只使用一个线程来正确处理这种情况。

根据操作的复杂程度,将每个操作放在自己的方法或类中是合理和谨慎的。

如果你坚持使用多个线程,你的主线程应该维护一个可运行的列表。遍历列表。从列表中弹出第一个可运行对象,为该可运行对象创建一个新线程,启动线程,然后在线程上调用 join()。主线程将阻塞,直到可运行对象完成。该循环将带您按顺序浏览所有可运行文件。同样,没有充分的理由这样做。可能有也可能没有不好的理由。

于 2013-09-13T19:20:39.117 回答