[#1363] Make sure ChannnelConfig.setAutoRead(false) will stop read from socket directly
This commit is contained in:
parent
2a7bea2ad3
commit
6942dba855
@ -93,6 +93,11 @@ public abstract class AbstractNioByteChannel extends AbstractNioChannel {
|
|||||||
"least one byte.");
|
"least one byte.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!config().isAutoRead()) {
|
||||||
|
// stop reading until next Channel.read() call
|
||||||
|
// See https://github.com/netty/netty/issues/1363
|
||||||
|
break loop;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
|
@ -90,10 +90,7 @@ public abstract class AbstractOioByteChannel extends AbstractOioChannel {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (byteBuf.isWritable()) {
|
if (!byteBuf.isWritable()) {
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
final int capacity = byteBuf.capacity();
|
final int capacity = byteBuf.capacity();
|
||||||
final int maxCapacity = byteBuf.maxCapacity();
|
final int maxCapacity = byteBuf.maxCapacity();
|
||||||
if (capacity == maxCapacity) {
|
if (capacity == maxCapacity) {
|
||||||
@ -115,6 +112,12 @@ public abstract class AbstractOioByteChannel extends AbstractOioChannel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!config().isAutoRead()) {
|
||||||
|
// stop reading until next Channel.read() call
|
||||||
|
// See https://github.com/netty/netty/issues/1363
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
if (read) {
|
if (read) {
|
||||||
read = false;
|
read = false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user