java多线程用于任务之间的同步

标签 java multithreading synchronized

我有一个java多线程环境的需求。问题是这样的;

我假设有 10 个不同的任务,并且我想将所有这 10 个任务分配给 10 个不同的线程。现在这些任务的完成时间可能会有所不同。当所有这 10 个线程都完成时,应该执行一些整理或清理任务。换句话说,我需要等到所有线程都完成,然后只有我可以继续执行进一步的代码。

如果此处需要更多详细信息,请告诉我。

谢谢, 阿什什

最佳答案

听起来是 CountDownLatch 的理想工作.

用 10 次计数来初始化它,当每个线程完成其工作时,它会倒计数 1。 当所有 10 个线程都完成后,CountDownLatch 将使原始线程运行,并且它可以执行清理工作。

然后启动 ExecutorService有 10 个固定线程来运行任务。

关于java多线程用于任务之间的同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20042432/

相关文章:

java - Glassfish 4 返回 400 错误的 GET 请求和负载

Java - 将谓词转换为字符串

java - 使用synchronized关键字和join()的输出差异

java - 添加子菜单

java - 如何从 Git 中删除 ".project"文件?

android - 运行 AsyncTask 时不显示布局

c# - ASP.NET 中使用线程的多个并发 Web 服务请求

java - Spring websocket线程模型

java - java中如何让线程等待并通知

java - 成员方法在整个类上同步