Sdílet prostřednictvím


Řízení procesů a prostředí

Rutiny řízení procesů slouží ke spouštění, zastavování a správě procesů v rámci programu. Rutiny řízení prostředí slouží k získání a změně informací o prostředí operačního systému.

Funkce řízení procesů a prostředí

Rutina Použít
abort Přerušený proces bez vyprázdnění vyrovnávacích pamětí nebo volání funkcí registrovaných atexit_onexit
assert Test chyby logiky
_ASSERT, _ASSERTE makra assertPodobá se , ale k dispozici pouze v ladicích verzích knihoven za běhu
atexit Plánování rutin pro provádění při ukončení programu
_beginthread, _beginthreadex Vytvoření nového vlákna v procesu operačního systému Windows
_cexit Proveďte exit postupy ukončení (například vyrovnávací paměti pro vyprázdnění) a vraťte řízení do volajícího programu bez ukončení procesu.
_c_exit Proveďte _exit postupy ukončení a pak vraťte řízení do volajícího programu bez ukončení procesu.
_cwait Počkejte na ukončení jiného procesu.
_endthread, _endthreadex Ukončení vlákna operačního systému Windows
_execl, _wexecl Spuštění nového procesu se seznamem argumentů
_execle, _wexecle Spuštění nového procesu se seznamem argumentů a daným prostředím
_execlp, _wexeclp Spuštění nového procesu pomocí PATH proměnné a seznamu argumentů
_execlpe, _wexeclpe Spuštění nového procesu pomocí PATH proměnné, daného prostředí a seznamu argumentů
_execv, _wexecv Spuštění nového procesu s polem argumentů
_execve, _wexecve Spuštění nového procesu s polem argumentů a daným prostředím
_execvp, _wexecvp Spuštění nového procesu pomocí PATH proměnné a pole argumentů
_execvpe, _wexecvpe Spuštění nového procesu pomocí PATH proměnné, daného prostředí a pole argumentů
exit Volání funkcí registrovaných atexit a _onexitvyprázdnění všech vyrovnávacích pamětí, zavření všech otevřených souborů a ukončení procesu
_exit Ukončit proces okamžitě bez volání atexit nebo _onexit vyprázdnění vyrovnávacích pamětí
getenv, _wgetenv, getenv_s, _wgetenv_s Získání hodnoty proměnné prostředí
_getpid Získání čísla ID procesu
longjmp Obnovení uloženého prostředí zásobníku; použijte ho ke spuštění nelokálového goto
_onexit Plánování rutin pro provádění při ukončení programu; použití pro kompatibilitu s Microsoft C/C++ verze 7.0 a starší
_pclose Počkejte na nový procesor příkazů a ukončete datový proud na přidruženém kanálu.
perror, _wperror Tisk chybové zprávy
_pipe Vytvoření kanálu pro čtení a zápis
_popen, _wpopen Vytvoření kanálu a spuštění příkazu
_putenv, _wputenv, _putenv_s, _wputenv_s Přidání nebo změna hodnoty proměnné prostředí
raise Odeslání signálu do volajícího procesu
setjmp Ukládání prostředí zásobníku; použití ke spuštění jiného než místního prostředí goto
signal Zpracování signálu přerušení
_spawnl, _wspawnl Vytvoření a spuštění nového procesu se zadaným seznamem argumentů
_spawnle, _wspawnle Vytvoření a spuštění nového procesu se zadaným seznamem argumentů a prostředím
_spawnlp, _wspawnlp Vytvoření a spuštění nového procesu pomocí PATH proměnné a zadaného seznamu argumentů
_spawnlpe, _wspawnlpe Vytvoření a spuštění nového procesu pomocí PATH proměnné, zadaného prostředí a seznamu argumentů
_spawnv, _wspawnv Vytvoření a spuštění nového procesu se zadaným polem argumentů
_spawnve, _wspawnve Vytvoření a spuštění nového procesu se zadaným prostředím a polem argumentů
_spawnvp, _wspawnvp Vytvoření a spuštění nového procesu pomocí PATH proměnné a zadaného pole argumentů
_spawnvpe, _wspawnvpe Vytvoření a spuštění nového procesu pomocí PATH proměnné, zadaného prostředí a pole argumentů
system, _wsystem Spuštění příkazu operačního systému

V operačním systému Windows je vytvářený proces ekvivalentní procesu vytváření. Jakýkoli proces může použít _cwait k čekání na jakýkoli jiný proces, pro který je ID procesu známé.

Rozdíl mezi rodinami _exec a _spawn rodinami spočívá v tom, že _spawn funkce může vrátit řízení z nového procesu do volajícího procesu. _spawn Ve funkci se volající proces i nový proces nacházejí v paměti, pokud _P_OVERLAY není zadán. _exec Ve funkci překryje nový proces volající proces, takže se ovládací prvek nemůže vrátit do volajícího procesu, pokud nedojde k chybě při pokusu o spuštění nového procesu.

Rozdíly mezi funkcemi a _exec_spawn rodinami zahrnují metodu vyhledání souboru, který se má provést jako nový proces, formulář, ve kterém jsou argumenty předány novému procesu, a metoda nastavení prostředí, jak je znázorněno v následující tabulce. Funkce, která předává seznam argumentů, pokud je počet argumentů konstantní nebo je znám v době kompilace. Použijte funkci, která předá ukazatel na pole obsahující argumenty, pokud se má určit počet argumentů za běhu. Informace v následující tabulce platí také pro širokoznakové protějšky _spawn funkcí a _exec funkcí.

_spawn a _exec rodiny funkcí

Funkce Vyhledání souboru pomocí PATH proměnné Konvence předávání argumentů Nastavení prostředí
_execl, _spawnl Číslo Seznam Zděděno z procesu volání
_execle, _spawnle Číslo Seznam Ukazatel na tabulku prostředí pro nový proces předaný jako poslední argument
_execlp, _spawnlp Ano Seznam Zděděno z procesu volání
_execvpe, _spawnvpe Ano Pole Ukazatel na tabulku prostředí pro nový proces předaný jako poslední argument
_execlpe, _spawnlpe Ano Seznam Ukazatel na tabulku prostředí pro nový proces předaný jako poslední argument
_execv, _spawnv Číslo Pole Zděděno z procesu volání
_execve, _spawnve Číslo Pole Ukazatel na tabulku prostředí pro nový proces předaný jako poslední argument
_execvp, _spawnvp Ano Pole Zděděno z procesu volání

Viz také

Rutiny UCRT (Universal C runtime) podle kategorie