Java 检查一段时间内的情况或在超时时终止
我想实现一个功能,应该如下所示:Java 检查一段时间内的情况或在超时时终止,java,concurrency,Java,Concurrency,我想实现一个功能,应该如下所示: WaitingUtility.repeatASupplier(getTheNeededSupplier()).every(100).for(10).now(); 供应商应该/可以看起来像番石榴的供应商: 如果供应商说是假的,那么电力公司就会继续询问和等待, 如果为“true”,则实用程序停止等待 每100毫秒,我的意思是每100毫秒,要求供应商提供结果。 使用for(10):如果超过10秒,则实用程序类停止 我可以想到几个实现和解决方案:计时器、执行器服务、“
WaitingUtility.repeatASupplier(getTheNeededSupplier()).every(100).for(10).now();
供应商应该/可以看起来像番石榴的供应商:
如果供应商说是假的,那么电力公司就会继续询问和等待,
如果为“true”,则实用程序停止等待
每100毫秒,我的意思是每100毫秒,要求供应商提供结果。
使用for(10):如果超过10秒,则实用程序类停止
我可以想到几个实现和解决方案:计时器、执行器服务、“自有”线程处理
是否存在现有的解决方案?
最好的解决方案是什么
Thanx也许您应该看看Java的
ExecutorService
s,尤其是它的使用。这可能会给你一些想法,让你朝着正确的方向开始。我正在考虑。但是,如果使用现有的框架/抽象有更好的解决方案,我不是舒尔。当使用那些未来的方案时,该解决方案将/不必轮询供应商,而是隐式使用适当的同步机制,如等待()
和通知()
。