@@ -129,8 +129,9 @@ The module defines the following:
129129
130130 Empty iterables are allowed, but acceptance of three empty iterables is
131131 platform-dependent. (It is known to work on Unix but not on Windows.) The
132- optional *timeout * argument specifies a time-out as a floating-point number
133- in seconds. When the *timeout * argument is omitted the function blocks until
132+ optional *timeout * argument specifies a time-out in seconds; it may be
133+ a non-integer to specify fractions of seconds.
134+ When the *timeout * argument is omitted the function blocks until
134135 at least one file descriptor is ready. A time-out value of zero specifies a
135136 poll and never blocks.
136137
@@ -164,6 +165,9 @@ The module defines the following:
164165 :pep: `475 ` for the rationale), instead of raising
165166 :exc: `InterruptedError `.
166167
168+ .. versionchanged :: next
169+ Accepts any real number as *timeout *, not only integer or float.
170+
167171
168172.. data :: PIPE_BUF
169173
@@ -270,6 +274,9 @@ object.
270274 :pep: `475 ` for the rationale), instead of raising
271275 :exc: `InterruptedError `.
272276
277+ .. versionchanged :: next
278+ Accepts any real number as *timeout *, not only integer or float.
279+
273280
274281.. _epoll-objects :
275282
@@ -368,14 +375,19 @@ Edge and Level Trigger Polling (epoll) Objects
368375
369376.. method :: epoll.poll(timeout=None, maxevents=-1)
370377
371- Wait for events. timeout in seconds (float)
378+ Wait for events.
379+ If *timeout * is given, it specifies the length of time in seconds
380+ (may be non-integer) which the system will wait for events before returning.
372381
373382 .. versionchanged :: 3.5
374383 The function is now retried with a recomputed timeout when interrupted by
375384 a signal, except if the signal handler raises an exception (see
376385 :pep: `475 ` for the rationale), instead of raising
377386 :exc: `InterruptedError `.
378387
388+ .. versionchanged :: next
389+ Accepts any real number as *timeout *, not only integer or float.
390+
379391
380392.. _poll-objects :
381393
@@ -464,6 +476,9 @@ linearly scanned again. :c:func:`!select` is *O*\ (*highest file descriptor*), w
464476 :pep: `475 ` for the rationale), instead of raising
465477 :exc: `InterruptedError `.
466478
479+ .. versionchanged :: next
480+ Accepts any real number as *timeout *, not only integer or float.
481+
467482
468483.. _kqueue-objects :
469484
@@ -496,7 +511,7 @@ Kqueue Objects
496511
497512 - changelist must be an iterable of kevent objects or ``None ``
498513 - max_events must be 0 or a positive integer
499- - timeout in seconds (floats possible); the default is ``None ``,
514+ - timeout in seconds (non-integers are possible); the default is ``None ``,
500515 to wait forever
501516
502517 .. versionchanged :: 3.5
@@ -505,6 +520,9 @@ Kqueue Objects
505520 :pep: `475 ` for the rationale), instead of raising
506521 :exc: `InterruptedError `.
507522
523+ .. versionchanged :: next
524+ Accepts any real number as *timeout *, not only integer or float.
525+
508526
509527.. _kevent-objects :
510528
0 commit comments