@@ -237,7 +237,7 @@ implementation used by the asyncio event loop:
237237
238238   It works reliably even when the asyncio event loop is run in a non-main OS thread.
239239
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
241241   time a child terminates), but starting a thread per process requires extra memory.
242242
243243   This watcher is used by default.
@@ -257,7 +257,7 @@ implementation used by the asyncio event loop:
257257   watcher is installed.
258258
259259   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
261261   :py:data: `SIGCHLD ` is received).
262262
263263   .. versionadded :: 3.8 
@@ -273,7 +273,7 @@ implementation used by the asyncio event loop:
273273   The watcher avoids disrupting other code spawning processes
274274   by polling every process explicitly on a :py:data: `SIGCHLD ` signal.
275275
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 *) 
277277   complexity but requires a running event loop in the main thread to work.
278278
279279   .. deprecated :: 3.12 
@@ -285,7 +285,7 @@ implementation used by the asyncio event loop:
285285   processes and waiting for their termination.
286286
287287   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).
289289
290290   This solution requires a running event loop in the main thread to work, as
291291   :class: `SafeChildWatcher `.
0 commit comments