Skip to content

Commit 2250e99

Browse files
M-ElsaeedMohammed Ehab
andcommitted
Fix performance Issue By Using Blocking Calls instead of Busy Waiting (#106)
Co-authored-by: Mohammed Ehab <moehabe@amazon.com>
1 parent e9c084e commit 2250e99

File tree

1 file changed

+5
-4
lines changed
  • aws-lambda-java-runtime-interface-client/src/main/java/com/amazonaws/services/lambda/runtime/api/client

1 file changed

+5
-4
lines changed

aws-lambda-java-runtime-interface-client/src/main/java/com/amazonaws/services/lambda/runtime/api/client/AWSLambda.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
import java.util.Properties;
4040
import java.util.concurrent.ExecutorService;
4141
import java.util.concurrent.Executors;
42+
import java.util.concurrent.TimeUnit;
4243

4344
/**
4445
* The entrypoint of this class is {@link AWSLambda#startRuntime}. It performs two main tasks:
@@ -253,10 +254,10 @@ protected static void startRuntimeLoops(LambdaRequestHandler lambdaRequestHandle
253254
}
254255
} finally {
255256
platformThreadExecutor.shutdown();
256-
while (true) {
257-
if (platformThreadExecutor.isTerminated()) {
258-
break;
259-
}
257+
try {
258+
platformThreadExecutor.awaitTermination(Long.MAX_VALUE, TimeUnit.DAYS);
259+
} catch (InterruptedException e) {
260+
Thread.currentThread().interrupt();
260261
}
261262
}
262263
} else {

0 commit comments

Comments
 (0)