在RMI中进行回调时需要担心什么?我只需要一个简单的客户端通知机制来避免过度轮询。
我找到了一个online example,它看起来非常简单,客户端只是实现了一个扩展Remote的接口(就像服务器一样)并将其传递给服务器,然后服务器可以回调它的方法。我猜测远程回调可以在任何线程上发生,所以我不得不假设它将与我的客户端应用程序的正常线程异步。还有什么?
答案 0 :(得分:4)
两件事。
RMI回调几乎肯定无法通过防火墙
RMI回调在与原始客户端调用服务器不同的线程上执行。如果不考虑这种情况,可能会出现意外的同步死锁。