Skip to content

Commit 6a51f51

Browse files
committed
fix: pr comments
1 parent 816c214 commit 6a51f51

1 file changed

Lines changed: 7 additions & 9 deletions

File tree

tests/test_concurrency.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,19 @@ def setUp(self):
1818
self.socket = "/tmp/sock"
1919

2020
def test_success_and_failure_isolation(self):
21-
ctx = multiprocessing.get_context("fork")
22-
success_counter = ctx.Value("i", 0)
23-
fail_counter = ctx.Value("i", 0)
21+
manager = multiprocessing.Manager()
22+
success_counter = manager.Value("i", 0)
23+
fail_counter = manager.Value("i", 0)
24+
lock = manager.Lock()
2425

2526
def fake_bootstrap_run(handler, lambda_runtime_client):
2627
pid = multiprocessing.current_process().pid
2728
if pid % 2 == 0:
2829
for _ in range(3):
29-
with success_counter.get_lock():
30+
with lock:
3031
success_counter.value += 1
3132
else:
32-
with fail_counter.get_lock():
33+
with lock:
3334
fail_counter.value += 1
3435
raise RuntimeError("Simulated failure")
3536

@@ -38,17 +39,14 @@ def fake_bootstrap_run(handler, lambda_runtime_client):
3839
), patch(
3940
"awslambdaric.lambda_multi_concurrent_utils.bootstrap.run",
4041
side_effect=fake_bootstrap_run,
41-
), patch(
42-
"awslambdaric.lambda_multi_concurrent_utils.multiprocessing.Process",
43-
ctx.Process,
4442
):
45-
# spawn 4 multi-concurrent processes
4643
MultiConcurrentRunner.run_concurrent(
4744
self.handler, self.addr, self.use_thread, self.socket, max_concurrency=4
4845
)
4946

5047
self.assertEqual(success_counter.value, 6)
5148
self.assertEqual(fail_counter.value, 2)
49+
manager.shutdown()
5250

5351

5452
if __name__ == "__main__":

0 commit comments

Comments
 (0)