对于在同一个jvm中运行的两个程序,Windows是否使用相同的端口进行传出连接?

时间:2014-08-05 01:46:52

标签: java windows http jvm comet

我的具体问题是我有一个我的java应用程序连接的tomcat comet servlet。由于某种原因,我得到随机END事件,我无法弄清楚为什么。我想知道,因为我试图清除什么没有错,如果Windows连接到相同的IP和端口,从同一个jvm,将给两个进程相同的端口?这会使服务器看起来连接来自同一个地方?这样做有用吗?我从netbeans,同一个JVM打开了两个应用程序实例,我想知道是否会发生这种情况?

2 个答案:

答案 0 :(得分:2)

  

我想知道,因为我试图清除什么没有错,如果Windows连接到相同的IP和端口,从同一个jvm中,会给两个进程相同的端口?

没有。 Windows将始终为出站连接分配新的本地端口。

  

这会使服务器看起来连接来自同一个地方?这样做有用吗?

没有

  

我从netbeans,同一个JVM打开了两个应用程序实例,我想知道是否会发生这种情况?

没有

@ TapanPandya提及的bug回答问题ServerSockets和明确bind()次调用。它与出站连接无关。

答案 1 :(得分:-1)

Java 7中有一个错误,允许多个应用程序使用相同的端口。 JDK-7179799。另外,请检查类似问题Can two applications listen to the same port