瀏覽代碼

Added a better comment as to why we have to check
the channels even though the negative channels would
pass through as the default channels just fine.
The key is avoiding UDP calls... they will get
translated into a regular send.

Paul Speed 10 年之前
父節點
當前提交
58313c271d
共有 1 個文件被更改,包括 7 次插入2 次删除
  1. 7 2
      jme3-networking/src/main/java/com/jme3/network/service/rpc/RpcConnection.java

+ 7 - 2
jme3-networking/src/main/java/com/jme3/network/service/rpc/RpcConnection.java

@@ -115,8 +115,13 @@ public class RpcConnection {
  
         if( log.isLoggable(Level.FINEST) ) {
             log.log(Level.FINEST, "Sending:{0}  on channel:{1}", new Object[]{msg, channel});
-        }        
-        if( channel >= 0 ) {
+        }
+        
+        // Prevent non-async messages from being send as UDP
+        // because there is a high probabilty that this would block
+        // forever waiting for a response.  For async calls it's ok
+        // so it doesn't do the check.
+        if( channel >= 0 ) {        
             connection.send(channel, msg);
         } else {
             connection.send(msg);