From 552f91b6b89a88de12c0c09ea2ed3ddb01663792 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Fri, 28 Jun 2013 12:40:09 +0000 Subject: [PATCH] dont start thread in constructor --- .../src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java | 1 + .../src/net/i2p/i2ptunnel/InternalSocketRunner.java | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java index eccdc480e8..3657851438 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java @@ -287,6 +287,7 @@ public class I2PTunnelHTTPClient extends I2PTunnelHTTPClientBase implements Runn _context.statManager().createRateStat("i2ptunnel.httpExpanded", "size transferred after expansion", "I2PTunnel", new long[] { 60*60*1000 }); super.startRunning(); this.isr = new InternalSocketRunner(this); + this.isr.start(); _context.portMapper().register(PortMapper.SVC_HTTP_PROXY, getLocalPort()); } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/InternalSocketRunner.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/InternalSocketRunner.java index a3f2f1717b..76a8cea7c7 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/InternalSocketRunner.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/InternalSocketRunner.java @@ -14,20 +14,23 @@ import net.i2p.util.Log; * @author zzz * @since 0.7.9 */ -class InternalSocketRunner implements Runnable { +class InternalSocketRunner extends I2PAppThread { private final I2PTunnelClientBase client; private final int port; private ServerSocket ss; private volatile boolean open; - /** starts the runner */ + /** + * Does not start the runner, caller must call start() + */ InternalSocketRunner(I2PTunnelClientBase client) { + super("Internal socket port " + client.getLocalPort()); + setDaemon(true); this.client = client; this.port = client.getLocalPort(); - Thread t = new I2PAppThread(this, "Internal socket port " + this.port, true); - t.start(); } + @Override public final void run() { try { this.ss = new InternalServerSocket(this.port); -- GitLab