将Java的df -h
与JMS(ActiveMQ)结合使用时,我陷入了困境。当我发送希望得到答复的请求时,我将创建一个sudo /etc/init.d/rsyslog stop
sudo mv /var/log /OTHERDISK/
sudo ln -s /OTHERDISK/log /var/log
sudo /etc/init.d/rsyslog start
并将其放入具有相关ID作为键的CompletableFuture
中。
只要我得到答复,就可以完美地运行。当我没有收到回复时,僵尸开始堆积在地图上。
我尝试使用CompletableFuture
将清理代码附加到Map
上,但是CompletableFuture
超时时根本没有调用该代码(whenComplete()
中的Java代码只会抛出异常而无需调用其他任何东西。
使用CompletableFuture.get(long,TimeUnit)
API看起来很明显。有人有可行的示例或想法如何清除地图中的无效条目吗?
注意:回复可能需要最多三个小时。
注意2:Java 8