Closes #22258: Fix the the internal function set_inheritable() on Illumos.
This platform exposes the function ioctl(FIOCLEX), but calling it fails with
errno is ENOTTY: "Inappropriate ioctl for device". set_inheritable() now falls
back to the slower fcntl() (F_GETFD and then F_SETFD).

--HG--
branch : 3.4
(Merge 3.4) Closes #22258: Fix the the internal function set_inheritable() on
Illumos.  This platform exposes the function ioctl(FIOCLEX), but calling it
fails with errno is ENOTTY: "Inappropriate ioctl for device". set_inheritable()
now falls back to the slower fcntl() (F_GETFD and then F_SETFD).
Closes #21527: Add default number of workers to ThreadPoolExecutor. (Claudiu Popa.)
pytime.h: remove duplicated "#ifndef Py_LIMITED_API"

--HG--
extra : rebase_source : 4d89d03690ef0c11cc23e4ac479202d8c503a5db
Issue #22043: Fix _PyTime_gettimeofday() if HAVE_GETTIMEOFDAY

Ensure also that the tv_usec field is consistent: in range [0; 999999].
Issue #22043: time.monotonic() is now always available

threading.Lock.acquire(), threading.RLock.acquire() and socket operations now
use a monotonic clock, instead of the system clock, when a timeout is used.

--HG--
extra : amend_source : 40c730cbf3c3c63cf0ab85570cb063ab137e75fb