Replies: 1 comment
-
是的,看样子确实需要移除这行代码,可以提个pr修复下,有三处onsuccess里面需要移除这行代码 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
位置:在rocketmq-example的rpc目录下的测试demo (version:5.3.2)
当我修改了运行 改测试的时候,测试结果抛出了 异常,内容是消息发送成功但是等待3000ms没有收到回复消息,内容如下
于是我尝试修改TTL的时间为30s,重新测试但是等待的时间并没有30s又抛出了该异常(在这个 过程中我填加了一些日志)
根据上面的日志我发现移除RequestResponseFuture的动作在processReplyMessage 之前,然后 我找到了如下代码,acquireCountDownLatch方法为取消阻塞等待。(这就导致了方法waitResponse 取消了阻塞继续执行 直到最后移除RequestResponseFuture,但是processReplyMessage 还没有 执行完成)
于是我将 requestResponseFuture.acquireCountDownLatch();这行代码注释掉,让他根据TTL的时间来自行取消阻塞,效果 为processReplyMessage 方法在waitResponse 前执行了,运行结果如下:
问题:requestResponseFuture.acquireCountDownLatch(); 这块是否存在着问题
Beta Was this translation helpful? Give feedback.
All reactions