Only call System.nanoTime() if no read batch is ongoing. Related to [#3808]

Motivation:

[#3808] introduced some improvements to reduce the calls to System.nanoTime() but missed one possible optimization.

Modifications:

Only call System.nanoTime() if no reading patch is in process.

Result:

Less System.nanoTime() calls.
This commit is contained in:
Norman Maurer 2015-05-22 13:40:01 +02:00
parent 74f67ddca7
commit 6703318010

View File

@ -212,10 +212,9 @@ public class ReadTimeoutHandler extends ChannelInboundHandlerAdapter {
return;
}
long currentTime = System.nanoTime();
long nextDelay = timeoutNanos;
if (!reading) {
nextDelay -= currentTime - lastReadTime;
nextDelay -= System.nanoTime() - lastReadTime;
}
if (nextDelay <= 0) {