This is an automated email from the ASF dual-hosted git repository.

markt-asf pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
     new a60a945c7e Reduce CPU usage while sending WebSocket close message
a60a945c7e is described below

commit a60a945c7e1ee4cc8308ffa2d9c8750d6d878030
Author: Mark Thomas <[email protected]>
AuthorDate: Fri Aug 21 13:45:25 2026 +0100

    Reduce CPU usage while sending WebSocket close message
---
 .../org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java | 2 +-
 webapps/docs/changelog.xml                                             | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git 
a/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java 
b/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java
index 1c12d654cc..867b7e386e 100644
--- a/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java
+++ b/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java
@@ -138,7 +138,7 @@ public class WsRemoteEndpointImplServer extends 
WsRemoteEndpointImplBase {
                     socketWrapper.getLock().unlock();
                 }
                 // Provide opportunity for another thread to obtain the 
socketWrapper lock
-                Thread.yield();
+                Thread.sleep(50);
             } finally {
                 // Re-obtain the per socket lock(s)
                 for (int i = 0; i < socketWrapperLockCount; i++) {
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 949bbb8a7b..68ee08b71b 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -494,6 +494,9 @@
         Ensure that WebSocket write timeouts apply to the complete message and
         are not lost if two writes have the same timeout. (markt)
       </fix>
+      <fix>
+        Reduce CPU usage while sending WebSocket close message. (markt)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Web applications">


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to