diff --git a/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java b/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java index 4ac902a48..39633881e 100644 --- a/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java +++ b/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java @@ -68,7 +68,7 @@ public class I2CPMessageReader { /** * Have the already started reader pause its reading indefinitely - * + * @deprecated unused */ public void pauseReading() { _reader.pauseRunner(); @@ -76,7 +76,7 @@ public class I2CPMessageReader { /** * Resume reading after a pause - * + * @deprecated unused */ public void resumeReading() { _reader.resumeRunner(); @@ -131,10 +131,12 @@ public class I2CPMessageReader { _stayAlive = true; } + /** deprecated unused */ public void pauseRunner() { _doRun = false; } + /** deprecated unused */ public void resumeRunner() { _doRun = true; } @@ -181,7 +183,8 @@ public class I2CPMessageReader { cancelRunner(); } } - if (!_doRun) { + // ??? unused + if (_stayAlive && !_doRun) { // pause .5 secs when we're paused try { Thread.sleep(500); diff --git a/core/java/src/net/i2p/internal/QueuedI2CPMessageReader.java b/core/java/src/net/i2p/internal/QueuedI2CPMessageReader.java index da128ceaa..d713b678d 100644 --- a/core/java/src/net/i2p/internal/QueuedI2CPMessageReader.java +++ b/core/java/src/net/i2p/internal/QueuedI2CPMessageReader.java @@ -26,6 +26,12 @@ public class QueuedI2CPMessageReader extends I2CPMessageReader { super(); } + @Override + public void cancelRunner() { + super.cancelRunner(); + _readerThread.interrupt(); + } + @Override public void run() { while (_stayAlive) { @@ -40,7 +46,8 @@ public class QueuedI2CPMessageReader extends I2CPMessageReader { _listener.messageReceived(QueuedI2CPMessageReader.this, msg); } catch (InterruptedException ie) {} } - if (!_doRun) { + // ??? unused + if (_stayAlive && !_doRun) { // pause .5 secs when we're paused try { Thread.sleep(500); diff --git a/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java b/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java index 68dabbcc7..74b93b34f 100644 --- a/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java +++ b/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java @@ -56,16 +56,19 @@ public class I2NPMessageReader { * */ public void startReading() { _readerThread.start(); } + /** * Have the already started reader pause its reading indefinitely - * + * @deprecated unused */ public void pauseReading() { _reader.pauseRunner(); } + /** * Resume reading after a pause - * + * @deprecated unused */ public void resumeReading() { _reader.resumeRunner(); } + /** * Cancel reading. * @@ -106,8 +109,13 @@ public class I2NPMessageReader { _stayAlive = true; _handler = new I2NPMessageHandler(_context); } + + /** deprecated unused */ public void pauseRunner() { _doRun = false; } + + /** deprecated unused */ public void resumeRunner() { _doRun = true; } + public void cancelRunner() { _doRun = false; _stayAlive = false; @@ -153,7 +161,8 @@ public class I2NPMessageReader { cancelRunner(); } } - if (!_doRun) { + // ??? unused + if (_stayAlive && !_doRun) { // pause .5 secs when we're paused try { Thread.sleep(500); } catch (InterruptedException ie) {} }