java - 阻止给定对象上的所有线程

标签 java concurrency

我基本上需要为我正在处理的当前项目编写一个锁,当连接失败时,调用给定方法的所有线程都应该挂起,直到重新建立连接为止。

如何在 Java 中再次执行此操作?我已经有一段时间没有处理这个问题了。

最佳答案

您可以等待 Condition方法内部。条件类似于:

while (!conn.isConnected) condition.await()

当然,除了这个伪代码之外,还有更多内容。

您可能想阅读所谓的 circuit breaker pattern也。有点流行,但它的目标是管理可能失败的集成点,例如与数据库的连接。

关于java - 阻止给定对象上的所有线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11695244/

相关文章:

java - 如何防止语句被 JVM 重新排序

servlets - 单例与单线程

c++ - C++ 中的 CPU 速度和线程

concurrency - V-lang : How to send +2500 HTTP requests per second?

java - 不推荐使用 Activity 类型的方法 managedQuery(Uri, String[], String, String[], String)

java - org.xml.sax.SAXParseException;序言中不允许引用。自动生成XHTML,java

java - Clojure/Java 的高效二进制序列化

java - JAVA中HttpClient请求的编码类型

java - 如何使用迭代器显示列表中的项目列表

java - Spring DAO 3.0.0.RC1 中的并发问题