]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
GH-103545: Add macOS specific constants for ``os.setpriority`` to ``os`` (#104606)
authorRonald Oussoren <ronaldoussoren@mac.com>
Fri, 19 May 2023 07:15:11 +0000 (09:15 +0200)
committerGitHub <noreply@github.com>
Fri, 19 May 2023 07:15:11 +0000 (09:15 +0200)
This adds a number of PRIO_DARWIN_* constants to the os module for use with os.setpriority.

---------

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Doc/library/os.rst
Misc/NEWS.d/next/macOS/2023-05-18-08-52-04.gh-issue-103545.pi5k2N.rst [new file with mode: 0644]
Modules/posixmodule.c

index 641e289e77c518f8915ffe2e816b11bd1839d1b0..83abb5d5ca1e4273acc410b8d9a03dfd522c1263 100644 (file)
@@ -493,6 +493,17 @@ process and user.
    .. versionadded:: 3.3
 
 
+.. data:: PRIO_DARWIN_THREAD
+          PRIO_DARWIN_PROCESS
+          PRIO_DARWIN_BG
+          PRIO_DARWIN_NONUI
+
+   Parameters for the :func:`getpriority` and :func:`setpriority` functions.
+
+   .. availability:: macOS
+
+   .. versionadded:: 3.12
+
 .. function:: getresuid()
 
    Return a tuple (ruid, euid, suid) denoting the current process's
diff --git a/Misc/NEWS.d/next/macOS/2023-05-18-08-52-04.gh-issue-103545.pi5k2N.rst b/Misc/NEWS.d/next/macOS/2023-05-18-08-52-04.gh-issue-103545.pi5k2N.rst
new file mode 100644 (file)
index 0000000..c40f946
--- /dev/null
@@ -0,0 +1 @@
+Add ``os.PRIO_DARWIN_THREAD``, ``os.PRIO_DARWIN_PROCESS``, ``os.PRIO_DARWIN_BG`` and ``os.PRIO_DARWIN_NONUI``. These can be used with ``os.setpriority`` to run the process at a lower priority and make use of the efficiency cores on Apple Silicon systems.
index 5022fdeb03703a4eb4e5c9a9941dd6362af48bf5..531f26ba8bc86fdb0651b440ffd54341c6ece330 100644 (file)
@@ -15917,6 +15917,18 @@ all_ins(PyObject *m)
 #ifdef PRIO_USER
     if (PyModule_AddIntMacro(m, PRIO_USER)) return -1;
 #endif
+#ifdef PRIO_DARWIN_THREAD
+    if (PyModule_AddIntMacro(m, PRIO_DARWIN_THREAD)) return -1;
+#endif
+#ifdef PRIO_DARWIN_PROCESS
+    if (PyModule_AddIntMacro(m, PRIO_DARWIN_PROCESS)) return -1;
+#endif
+#ifdef PRIO_DARWIN_BG
+    if (PyModule_AddIntMacro(m, PRIO_DARWIN_BG)) return -1;
+#endif
+#ifdef PRIO_DARWIN_NONUI
+    if (PyModule_AddIntMacro(m, PRIO_DARWIN_NONUI)) return -1;
+#endif
 #ifdef O_CLOEXEC
     if (PyModule_AddIntMacro(m, O_CLOEXEC)) return -1;
 #endif