Когда я renice
многопоточный процесс в Ubuntu 10.04, затем просмотрите результаты в top
, кажется, что фактически переименовывается только основной поток. Все остальные потоки сохраняют свою старую красивую ценность. Какой самый простой способ переименовать все потоки в процессе, а не только основной поток?
renice +/-n -g gid
куда gid
это идентификатор группы процессов, который вы можете найти с помощью ps -Aj
Вдохновленный ответом zhihui, я на самом деле использовал:
renice -n <niceness> -p `ps --no-heading -Lo tid <PID>`
Следующая команда может установить значение nice на +15 для всех потоков в процессе "procid":
ps --no-heading -Lj <procid> | awk '{system("renice +15 "$4)}'