MCPcopy Index your code
hub / github.com/RustPython/RustPython / _create_and_install_waiters

Function _create_and_install_waiters

Lib/concurrent/futures/_base.py:155–174  ·  view source on GitHub ↗
(fs, return_when)

Source from the content-addressed store, hash-verified

153 future._condition.release()
154
155def _create_and_install_waiters(fs, return_when):
156 if return_when == _AS_COMPLETED:
157 waiter = _AsCompletedWaiter()
158 elif return_when == FIRST_COMPLETED:
159 waiter = _FirstCompletedWaiter()
160 else:
161 pending_count = sum(
162 f._state not in [CANCELLED_AND_NOTIFIED, FINISHED] for f in fs)
163
164 if return_when == FIRST_EXCEPTION:
165 waiter = _AllCompletedWaiter(pending_count, stop_on_exception=True)
166 elif return_when == ALL_COMPLETED:
167 waiter = _AllCompletedWaiter(pending_count, stop_on_exception=False)
168 else:
169 raise ValueError("Invalid return condition: %r" % return_when)
170
171 for f in fs:
172 f._waiters.append(waiter)
173
174 return waiter
175
176
177def _yield_finished_futures(fs, waiter, ref_collect):

Callers 2

as_completedFunction · 0.85
waitFunction · 0.85

Calls 5

_AsCompletedWaiterClass · 0.85
_AllCompletedWaiterClass · 0.85
sumFunction · 0.50
appendMethod · 0.45

Tested by

no test coverage detected