Python Glossary English

Python 3.3+Linux · macOSosфункция

os.setpriority

os — сигналы и приоритет

Устанавливает приоритет планирования (nice) процесса/группы/пользователя. Доступно на Unix.

Синтаксис

os.setpriority(...)

Задаёт абсолютное значение, а не прибавку, как nice. Повысить приоритет (уменьшить значение) без прав суперпользователя нельзя — будет PermissionError. Для фоновой обработки, которая не должна мешать интерактивной работе, обычно ставят 10 или 19.

Примеры

import os
os.setpriority(os.PRIO_PROCESS, 0, 10)   # → ? только Unix: None; текущему процессу (who=0) назначен nice 10 — значение задаётся, а не прибавляется, как в os.nice
print(os.getpriority(os.PRIO_PROCESS, 0))   # → ? только Unix: 10
os.setpriority(os.PRIO_PGRP, 0, 15)   # → ? только Unix: nice 15 сразу всей группе процессов
import os
import subprocess; proc = subprocess.Popen(['sleep', '60'])   # → ? фоновый потомок запущен
os.setpriority(os.PRIO_PROCESS, proc.pid, 19)   # → ? только Unix: тяжёлая фоновая задача понижена до минимального приоритета
os.setpriority(os.PRIO_PROCESS, 0, -5)   # → ? только Unix: PermissionError без прав root — повышать приоритет нельзя

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности