Skip to content

Commit d7b9ab7

Browse files
authored
Merge pull request TooTallNate#476 from TooTallNate/revert-475-master
Revert "Fix for TooTallNate#217 by ddrscott"
2 parents cfe8887 + 787522e commit d7b9ab7

File tree

1 file changed

+8
-14
lines changed

1 file changed

+8
-14
lines changed

src/main/java/org/java_websocket/client/WebSocketClient.java

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import java.io.IOException;
44
import java.io.InputStream;
55
import java.io.OutputStream;
6-
import java.lang.ref.WeakReference;
76
import java.net.InetSocketAddress;
87
import java.net.Proxy;
98
import java.net.Socket;
@@ -47,8 +46,7 @@ public abstract class WebSocketClient extends WebSocketAdapter implements Runnab
4746

4847
private Proxy proxy = Proxy.NO_PROXY;
4948

50-
private WeakReference<Thread> readThread;
51-
private WeakReference<Thread> writeThread;
49+
private Thread writeThread;
5250

5351
private Draft draft;
5452

@@ -157,11 +155,10 @@ public void setTcpNoDelay( boolean tcpNoDelay ) {
157155
* Initiates the websocket connection. This method does not block.
158156
*/
159157
public void connect() {
160-
if( readThread != null )
158+
if( writeThread != null )
161159
throw new IllegalStateException( "WebSocketClient objects are not reuseable" );
162-
Thread reader = new Thread( this ,"WebsocketReadThread");
163-
reader.start();
164-
readThread = new WeakReference<Thread>( reader );
160+
writeThread = new Thread( this );
161+
writeThread.start();
165162
}
166163

167164
/**
@@ -233,9 +230,8 @@ public void run() {
233230
return;
234231
}
235232

236-
Thread write = new Thread( new WebsocketWriteThread() );
237-
write.start();
238-
writeThread = new WeakReference<Thread>( write );
233+
writeThread = new Thread( new WebsocketWriteThread() );
234+
writeThread.start();
239235

240236
byte[] rawbuffer = new byte[ WebSocketImpl.RCVBUF ];
241237
int readBytes;
@@ -332,10 +328,8 @@ public final void onWebsocketOpen( WebSocket conn, Handshakedata handshake ) {
332328
*/
333329
@Override
334330
public final void onWebsocketClose( WebSocket conn, int code, String reason, boolean remote ) {
335-
if( writeThread != null && writeThread.get() != null)
336-
writeThread.get().interrupt();
337-
if( readThread != null && readThread.get() != null)
338-
readThread.get().interrupt();
331+
if( writeThread != null )
332+
writeThread.interrupt();
339333
try {
340334
if( socket != null )
341335
socket.close();

0 commit comments

Comments
 (0)