title: Netty allows same port to be bound multiple times by different programs
body: <p>I'm a noob to Sockets Programming.Maybe am asking a fundamental question. Please bear with me. 
  I wrote a sample netty server and started it from console. It runs fine. The problem i have is that when i run the same server from two console windows, i'd expect one of them to throw 'Address already in use' exception. It does not do that and I dont understand why. Please help.</p>
  
  <pre><code>    public static void main(String[] args) {
      ChannelFactory cf = new NioServerSocketChannelFactory(Executors.newFixedThreadPool(100), new MemoryAwareThreadPoolExecutor(1000,2048,25096,2,TimeUnit.SECONDS));
      //ChannelFactory cf = new OioServerSocketChannelFactory(Executors.newFixedThreadPool(100), Executors.newCachedThreadPool());
  
  
      ServerBootstrap bootstrap = new ServerBootstrap(cf);
      bootstrap.setPipelineFactory(new ChannelPipelineFactory() {
  
          @Override
          public ChannelPipeline getPipeline() throws Exception {
              return Channels.pipeline(new ChannelHandler("test"));
          }
      });
  
      bootstrap.setOption("child.keepAlive", true);
      bootstrap.setOption("child.tcpNoDelay", true);      
      bootstrap.setOption("child.reuseAddress", true);
      bootstrap.setOption("child.connectTimeoutMillis", 30000);
      //NEVER bootstrap.setOption("child.readWriteFair", true);
      //bootstrap.setOption("disconnect", true);
      bootstrap.setOption("tcpNoDelay", true);
      bootstrap.setOption("reuseAddress", true);
      bootstrap.setOption("connectTimeoutMillis", 30000);
      bootstrap.setOption("readWriteFair", true);
      bootstrap.bind(new InetSocketAddress(9998));        
  }
  </code></pre>