Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
review suggestions
  • Loading branch information
eendebakpt committed Jan 15, 2025
commit a90d5e8ced6c98baed6154b4dd253aa99a9fc24e
16 changes: 8 additions & 8 deletions Lib/test/test_free_threading/test_enumerate.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import unittest
import sys
from threading import Thread
from threading import Thread, Barrier

from test.support import threading_helper

Expand All @@ -14,14 +14,14 @@ def test_threading(self):
number_of_iterations = 8
n = 100
start = sys.maxsize - 40
workers_enabled = False
barrier = Barrier(number_of_threads)
def work(enum):
barrier.wait()
while True:
if workers_enabled:
try:
_ = next(enum)
except StopIteration:
break
try:
_ = next(enum)
except StopIteration:
break

for _ in range(number_of_iterations):
enum = enumerate(range(start, start + n))
Expand All @@ -31,10 +31,10 @@ def work(enum):
Thread(target=work, args=[enum]))
for t in worker_threads:
t.start()
workers_enabled = True # make sure to start all threads simultaneously
for t in worker_threads:
t.join()

barrier.reset()

if __name__ == "__main__":
unittest.main()