diff --git a/src/main/java/org/java_websocket/AbstractWebSocket.java b/src/main/java/org/java_websocket/AbstractWebSocket.java
index bbb1dc8f..a3540bb1 100644
--- a/src/main/java/org/java_websocket/AbstractWebSocket.java
+++ b/src/main/java/org/java_websocket/AbstractWebSocket.java
@@ -201,7 +201,7 @@ protected void startConnectionLostTimer() {
private void restartConnectionLostTimer() {
cancelConnectionLostTimer();
connectionLostCheckerService = Executors
- .newSingleThreadScheduledExecutor(new NamedThreadFactory("connectionLostChecker", daemon));
+ .newSingleThreadScheduledExecutor(new NamedThreadFactory(connectionLostThreadPrefix(), daemon));
Runnable connectionLostChecker = new Runnable() {
/**
@@ -233,6 +233,10 @@ public void run() {
TimeUnit.NANOSECONDS);
}
+ protected String connectionLostThreadPrefix () {
+ return "connectionLostChecker";
+ }
+
/**
* Send a ping to the endpoint or close the connection since the other endpoint did not respond
* with a ping
diff --git a/src/main/java/org/java_websocket/client/WebSocketClient.java b/src/main/java/org/java_websocket/client/WebSocketClient.java
index 1ac2df07..dd2f205a 100644
--- a/src/main/java/org/java_websocket/client/WebSocketClient.java
+++ b/src/main/java/org/java_websocket/client/WebSocketClient.java
@@ -380,10 +380,18 @@ public void connect() {
}
connectReadThread = new Thread(this);
connectReadThread.setDaemon(isDaemon());
- connectReadThread.setName("WebSocketConnectReadThread-" + connectReadThread.getId());
+ connectReadThread.setName(connectReadThreadName(connectReadThread.getId()));
connectReadThread.start();
}
+ protected String connectReadThreadName (long threadId) {
+ return "WebSocketConnectReadThread-" + threadId;
+ }
+
+ protected String writeThreadName (long threadId) {
+ return "WebSocketWriteThread-" + threadId;
+ }
+
/**
* Same as connect
but blocks until the websocket connected or failed to do so.
*
@@ -819,7 +827,7 @@ private class WebsocketWriteThread implements Runnable {
@Override
public void run() {
- Thread.currentThread().setName("WebSocketWriteThread-" + Thread.currentThread().getId());
+ Thread.currentThread().setName(writeThreadName(Thread.currentThread().getId()));
try {
runWriteData();
} catch (IOException e) {