Skip to content

Commit 5240ef3

Browse files
committed
Change "synchronized" to reentrant lock for virtual-threads
1 parent 1f2a243 commit 5240ef3

File tree

1 file changed

+5
-5
lines changed
  • spring-cloud-function-adapters/spring-cloud-function-serverless-web/src/main/java/org/springframework/cloud/function/serverless/web

1 file changed

+5
-5
lines changed

spring-cloud-function-adapters/spring-cloud-function-serverless-web/src/main/java/org/springframework/cloud/function/serverless/web/ServerlessAsyncContext.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public class ServerlessAsyncContext implements AsyncContext {
5757

5858
private final List<Runnable> dispatchHandlers = new ArrayList<>();
5959

60-
private static final ReentrantLock globalLock = new ReentrantLock();
60+
private final ReentrantLock globalLock = new ReentrantLock();
6161

6262

6363
public ServerlessAsyncContext(ServletRequest request, @Nullable ServletResponse response) {
@@ -69,7 +69,7 @@ public ServerlessAsyncContext(ServletRequest request, @Nullable ServletResponse
6969
public void addDispatchHandler(Runnable handler) {
7070
Assert.notNull(handler, "Dispatch handler must not be null");
7171
try {
72-
globalLock.lock();
72+
this.globalLock.lock();
7373
if (this.dispatchedPath == null) {
7474
this.dispatchHandlers.add(handler);
7575
}
@@ -78,7 +78,7 @@ public void addDispatchHandler(Runnable handler) {
7878
}
7979
}
8080
finally {
81-
globalLock.unlock();
81+
this.globalLock.unlock();
8282
}
8383
}
8484

@@ -111,12 +111,12 @@ public void dispatch(String path) {
111111
@Override
112112
public void dispatch(@Nullable ServletContext context, String path) {
113113
try {
114-
globalLock.lock();
114+
this.globalLock.lock();
115115
this.dispatchedPath = path;
116116
this.dispatchHandlers.forEach(Runnable::run);
117117
}
118118
finally {
119-
globalLock.unlock();
119+
this.globalLock.unlock();
120120
}
121121
}
122122

0 commit comments

Comments
 (0)