@@ -237,7 +237,7 @@ implementation used by the asyncio event loop:
237
237
238
238
It works reliably even when the asyncio event loop is run in a non-main OS thread.
239
239
240
- There is no noticeable overhead when handling a big number of children (*O(1) * each
240
+ There is no noticeable overhead when handling a big number of children (*O * \ (1) each
241
241
time a child terminates), but starting a thread per process requires extra memory.
242
242
243
243
This watcher is used by default.
@@ -257,7 +257,7 @@ implementation used by the asyncio event loop:
257
257
watcher is installed.
258
258
259
259
The solution is safe but it has a significant overhead when
260
- handling a big number of processes (*O(n) * each time a
260
+ handling a big number of processes (*O * \ (* n *) each time a
261
261
:py:data: `SIGCHLD ` is received).
262
262
263
263
.. versionadded :: 3.8
@@ -273,7 +273,7 @@ implementation used by the asyncio event loop:
273
273
The watcher avoids disrupting other code spawning processes
274
274
by polling every process explicitly on a :py:data: `SIGCHLD ` signal.
275
275
276
- This solution is as safe as :class: `MultiLoopChildWatcher ` and has the same *O(N) *
276
+ This solution is as safe as :class: `MultiLoopChildWatcher ` and has the same *O * \ (* n *)
277
277
complexity but requires a running event loop in the main thread to work.
278
278
279
279
.. deprecated :: 3.12
@@ -285,7 +285,7 @@ implementation used by the asyncio event loop:
285
285
processes and waiting for their termination.
286
286
287
287
There is no noticeable overhead when handling a big number of
288
- children (*O(1) * each time a child terminates).
288
+ children (*O * \ (1) each time a child terminates).
289
289
290
290
This solution requires a running event loop in the main thread to work, as
291
291
:class: `SafeChildWatcher `.
0 commit comments