Your Browser is not longer supported
Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...
{{viewport.spaceProperty.prod}}
setpgid - Prozessgruppennummer für Auftragssteuerung setzen
&pagelevel(4)&pagelevel
Definition | #include <unistd.h> Optional #include <sys/types.h> (Ende) int setpgid(pid_t pid, pid_t pgid); |
Beschreibung | setpgid() wird benutzt, um sich entweder einer existierenden Prozessgruppe anzuschließen oder um eine neue Prozessgruppe innerhalb der Sitzung des aufrufenden Prozesses zu erzeugen. Wenn pgid gleich pid ist, wird der Prozess zu einem Prozessgruppenleiter. Wenn pgid ungleich pid ist, wird der Prozess Mitglied einer existierenden Gruppe. Die Prozessgruppennummer des Sitzungsleiters ändert sich nicht. Bei erfolgreicher Beendigung wird die Prozessgruppennummer des Prozesses mit der Prozessnummer, die zu pid passt, auf pgid gesetzt.
Wenn pid gleich 0 ist, wird die Prozessnummer des aufrufenden Prozesses verwendet. Wenn pgid gleich 0 ist, wird die Prozessnummer des angegebenen Prozesses verwendet. |
Returnwert | 0 | bei Erfolg |
| -1 | bei Fehler. errno wird gesetzt, um den Fehler anzuzeigen. |
Fehler | setpgid() schlägt fehl, wenn gilt:
|
| EACCES
| Der Wert von pid entspricht der Prozessnummer eines Sohnprozesses des aufrufenden Prozesses, und der Sohnprozess hat erfolgreich eine der exec -Funktionen aufgerufen. |
| EINVAL
| Der Wert von pgid ist kleiner als 0 oder ein Wert, der von der Implementierung nicht unterstützt wird. |
| EPERM
| Der Prozess, der durch pid angegeben wird, ist ein Sitzungsführer, oder der Wert von pid entspricht der Prozessnummer eines Sohnprozesses des aufrufenden Prozesses und der Sohnprozess ist nicht in derselben Sitzung wie der aufrufende Prozess, oder der Wert von pgid ist gültig, aber entspricht nicht der Prozessnummer des Prozesses, der durch pid angesprochen wird und es gibt keinen Prozess mit einer Prozessgruppennummer, die dem Wert von pgid in derselben Sitzung wie der aufrufende Prozess entspricht. |
| ESRCH
| Der Wert von pid entspricht nicht der Prozessnummer des aufrufenden Prozesses oder eines Sohnprozesses des aufrufenden Prozesses. |
Siehe auch | exec , getpgrp() , setsid() , tcsetpgrp() , sys/types.h , unistd.h .
|