Cambia la gentilezza (priorità) di un processo in esecuzione


80

È possibile impostare un nuovo nicelivello di un processo in esecuzione con un ID noto?

Questa operazione richiede l'accesso come root o è solo il proprietario del processo?

Risposte:


76

terminale

Se sei in un terminal puoi usarlo renice

renice [-n] priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

Un semplice esempio sarebbe

renice 8 31043
31043: old priority 5, new priority 8

Puoi anche passare bandiere rigide, ma segue quell'ordine (devi prima passare la priorità e poi il pid - se cambi l'ordine mostrerà il messaggio di utilizzo)

renice -n 5 -p 31043
31043: old priority 8, new priority 5

Priorità di lavoro su una scala -20da 19- Più basso è il numero, maggiore è la priorità del sul sistema.

Se sei il proprietario del processo, non avrai bisogno di root, tuttavia, se il processo è di proprietà di un altro utente o se prevedi di cambiare il gruppo / utente del processo root (via sudo) sarà richiesto.


11
Non puoi ridurre la gentilezza come utente. :)
htorque,

5
Come dice @htorque, un non- rootutente può solo aumentare la gentilezza, non può diminuire la gentilezza, nemmeno a un livello precedente di gentilezza che il processo ha avuto, e nemmeno a un livello precedente di gentilezza da cui si era proceduto renice. Raccomando di modificare questa risposta per incorporare tali informazioni.
Eliah Kagan,

2
C'è qualche svantaggio nel dare priorità al processo -20?
James Watkins,

2
@JamesWatkins Potresti bloccare il tuo computer
DarthRubik

33

GUI

  • Alt+ F2e digitaresudo gnome-system-monitor

Prima dell'11.04: Sistema> Amministrazione> Monitor di sistema. Scegli i processi.
In 11.04: Alt+ Ae cerca system monitor.

Gli ID sono mostrati nell'immagine qui:

inserisci qui la descrizione dell'immagine

E bello non richiede sudo per aumentare la gentilezza se si possiede il compito. Lo fa se è necessario ridurre la gentilezza.


10

Inizia un comando con un bel prio

nice -n 19 your_command

Processo Renice

renice 19 $(pidof your_command_name_like_for_ex_ffmpeg)

19

tra -20 e 19

19 è la priorità più bassa


8

L'uso di "renice" nel terminale è il seguente:

Usage:
 renice [-n] <priority> [-p] <pid> [<pid>  ...]
 renice [-n] <priority> [-g] <pgrp> [<pgrp> ...]
 renice [-n] <priority> [-u] <user> [<user> ...]

Options:
 -g, --pgrp <id>        interpret as process group ID
 -h, --help             print help
 -n, --priority <num>   set the nice increment value
 -p, --pid <id>         force to be interpreted as process ID
 -u, --user <name|id>   interpret as username or user ID
 -v, --version          print version

L'uso di "sudo" prima del comando "renice" porta l'utente al livello principale e sarà richiesta una password amministratore / root.

Ad esempio, se si desidera elevare il processo con PID (ID processo) 2606 dalla priorità normale alla priorità alta , digitare il terminale come segue:

sudo renice -n -5 -p 2606

3

Puoi anche rinominare un processo nella parte superiore.

1) Inizia in alto

$ top

2) renice premendo r. Ti verrà richiesto l'ID processo (PID) del processo che desideri rinominare. Il PID predefinito è il primo processo (quello che consuma più risorse). Confermare con Invio. Imposta il nuovo valore piacevole da -20 (priorità più alta) a +19 (priorità più bassa).

inserisci qui la descrizione dell'immagine


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.