程序在调用下面一段代码时发生死锁,可能有哪些原因导致死锁
执行代码:
channelFuture = cb.connect(new InetSocketAddress(this.host, this.port));
channelFuture.awaitUninterruptibly(connTimeout, TimeUnit.MILLISECONDS);
异常内容:
2018-03-08 14:37:19[ERROR][New I/O worker #28][com.cmbchina.ocean.transport.netty.TcpLongConnectionServerHandler:124] 异常:await*() in I/O thread causes a dead lock or sudden performance drop. Use addListener() instead or call await*() from a different thread.
java.lang.IllegalStateException: await*() in I/O thread causes a dead lock or sudden performance drop. Use addListener() instead or call await*() from a different thread.
at org.jboss.netty.channel.DefaultChannelFuture.checkDeadLock(DefaultChannelFuture.java:342)
at org.jboss.netty.channel.DefaultChannelFuture.await0(DefaultChannelFuture.java:306)
at org.jboss.netty.channel.DefaultChannelFuture.awaitUninterruptibly(DefaultChannelFuture.java:277)
at com.cmbchina.ocean.transport.tcp.TCPClient.connect(TCPClient.java:351)