在 Java 中实现阻塞函数调用的推荐/最佳方法是什么,稍后可以通过另一个线程的调用来解除阻塞?
基本上我想在一个对象上有两个方法,其中第一个调用会阻塞任何调用线程,直到另一个线程运行第二个方法:
public class Blocker {
/* Any thread that calls this function will get blocked */
public static SomeResultObject blockingCall() {
// ...
}
/* when this function is called all blocked threads will continue */
public void unblockAll() {
// ...
}
}
顺便说一句,其目的不仅仅是获得阻塞行为,而是编写一种方法,该方法会阻塞直到将来可以计算所需结果的某个点。
您可以使用倒计时锁存器.
latch = new CountDownLatch(1);
要阻止,请调用:
latch.await();
如需解锁,请致电:
latch.countDown();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)