Partager via


Processus et contrôle ambiance

Utilisez les routines de contrôle de traitement pour démarrer, arrêter, et gérer des processus d'un programme.Utilisez des routines d'environnement-contrôle d'obtenir et de modifier des informations sur l'environnement du système d'exploitation.

Fonctions de contrôle de processus et de l'environnement

routine

Utilisation

équivalent du .NET Framework

arrêt

Le processus d'arrêt sans vider mémoires tampons ou les appels de fonction stocké par atexit et _onexit

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

assert

Test pour une erreur de logique

System : : diagnostic : : débogage : : assertion

macros de_ASSERT ; _ASSERTE

Semblable à assert, mais uniquement disponible dans les versions debug des bibliothèques Runtime

System : : diagnostic : : débogage : : assertion

atexit

Routines de planification de l'exécution à l'arrêt du programme

System : : diagnostic : : processus : : quitté

_beginthread, _beginthreadex

créez un nouveau thread sur un processus de système d'exploitation Windows

System : : Threads : : thread : : début

_cexit

Exécutez les procédures d'arrêt d' exit (telles que purger les mémoires tampons), puis retourne le contrôle au programme appelant sans arrêter le processus

System : : diagnostic : : processus : : CloseMainWindow

_c_exit

Exécutez les procédures d'arrêt d' _exit , puis retourne le contrôle au programme appelant sans arrêter le processus

System : : diagnostic : : processus : : CloseMainWindow

_cwait

Attendez qu'un autre processus se termine

System : : diagnostic : : processus : : WaitForExit

_endthread, _endthreadex

terminez un thread de système d'exploitation Windows

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

_execl, _wexecl

Exécutez le nouveau processus à la liste d'arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execle, _wexecle

Exécutez le nouveau processus à la liste d'arguments et l'environnement donné

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execlp, _wexeclp

Exécutez le nouveau processus à l'aide de la variable et une liste d'arguments d' PATH

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execlpe, _wexeclpe

Exécutez le nouveau processus à l'aide de la variable d' PATH , en fonction de l'environnement, et une liste d'arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execv, _wexecv

exécutez le nouveau processus avec le tableau des arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execve, _wexecve

exécutez le nouveau processus avec le tableau des arguments et l'environnement donné

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execvp, _wexecvp

Exécutez le nouveau processus à l'aide de la variable et le tableau des arguments d' PATH

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_execvpe, _wexecvpe

Exécutez le nouveau processus à l'aide de la variable d' PATH , en fonction de l'environnement, et le tableau d'arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

exit

Appelez les fonctions stockées par atexit et _onexit, videz toutes les mémoires tampons, fermez tous les fichiers ouverts, puis terminez le processus

System : : diagnostic : : processus : : mise à mort

_exit

Terminez le processus immédiatement sans appeler atexit ou _onexit ou vide des mémoires tampons

System : : diagnostic : : processus : : mise à mort

getenv, _wgetenv, getenv_s, _wgetenv_s

Valeur get de variable d'environnement

System : : environnement : : GetEnvironmentVariable

_getpid

Numéro d'ID de processus get

System : : diagnostic : : processus : : identificateur

longjmp

Restaurez l'environnement stocké de pile ; utilisez -le pour exécuter gotonon locale

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

_onexit

Routines de planification de l'exécution à l'arrêt du programme ; utilisez pour la compatibilité avec la version 7,0 de Microsoft C/C++ et antérieures

System : : diagnostic : : processus : : quitté

_pclose

Attendez que le nouveau interpréteur de commandes et fermez le flux de données sur le canal associé

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

perror, _wperror

message d'erreur d'impression

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

_pipe

Créez le canal pour la lecture et l'écriture

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

_popen, _wpopen

créez le canal et exécutez la commande

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

_putenv, _wputenv, _putenv_s, _wputenv_s

Ajoutez ou remplacez la valeur de la variable d'environnement

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

raise

envoyez le signal au processus appelant

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

setjmp

Enregistrez l'environnement de pile ; utilisation d'exécuter gotonon local

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

signal

signal d'interruption de handle

Non applicable.Pour appeler la fonction C standard, utilisez PInvoke.Pour plus d'informations, consultez l' exemples d'appel de code non managé.

_spawnl, _wspawnl

Créer et exécuter le nouveau processus à la liste d'arguments spécifiée

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnle, _wspawnle

Créer et exécuter le nouveau processus à la liste d'arguments spécifiée et l'environnement

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnlp, _wspawnlp

Créer et exécuter le nouveau processus à l'aide de la variable d' PATH et une liste d'arguments spécifiée

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnlpe, _wspawnlpe

Créer et exécuter le nouveau processus à l'aide de la variable d' PATH , l'environnement spécifié, et une liste d'arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnv, _wspawnv

Créer et exécuter le nouveau processus avec le tableau des arguments spécifiés

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnve, _wspawnve

Créer et exécuter le nouveau processus avec l'environnement spécifié et le tableau d'arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnvp, _wspawnvp

Créer et exécuter le nouveau processus à l'aide de la variable d' PATH et le tableau des arguments spécifiés

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

_spawnvpe, _wspawnvpe

Créer et exécuter le nouveau processus à l'aide de la variable d' PATH , l'environnement spécifié, et le tableau d'arguments

System : : diagnostic : : classe de processus, System : : diagnostic : : classe de ProcessStartInfo

système, _wsystem

exécutez la commande du système d'exploitation

System : : diagnostic : : classe de ProcessStartInfo, System : : diagnostic : : classe de processus

dans le système d'exploitation Windows, le processus engendré est équivalent au processus de frai.Tout processus peut utiliser _cwait pour attendre que tout autre processus pour lequel l'ID de processus est connu.

La différence entre _exec et les familles d' _spawn est qu'une fonction d' _spawn peut retourner le contrôle du nouveau processus au processus appelant.dans une fonction d' _spawn , le processus appelant et le nouveau processus sont présents dans la mémoire à moins qu' _P_OVERLAY soit spécifié.Dans une fonction d' _exec , le nouveau processus chevauche le processus appelant, le contrôle ne peut pas retourner au processus appelant que si une erreur se produit dans la tentative de commencer l'exécution du nouveau processus.

Les différences entre les fonctions dans la famille d' _exec , ainsi que parmi ceux de la famille d' _spawn , impliquent la méthode de localiser le fichier à exécuter en tant que nouveau processus, formulaire dans lesquels les arguments sont passés au nouveau processus, et méthode de définir l'environnement, comme indiqué dans le tableau suivant.Utilisez une fonction qui passe une liste d'arguments lorsque le nombre d'arguments est fixe ou est connu au moment de la compilation.Utilisez une fonction qui passe un pointeur vers un tableau contenant les arguments lorsque le nombre d'arguments doit être déterminé au moment de l'exécution.Les informations du tableau suivant s'appliquent également aux équivalents à caractère élargi d' _spawn et _exec s'exécute.

le _spawn et le _exec s'exécutent des familles

Fonctions

Variable de PATH d'utilisation pour localiser le fichier

Argument-passer la convention

paramètres d'environnement

_execl, _spawnl

Non

Liste

hérité du processus appelant

_execle, _spawnle

Non

Liste

Le pointeur à la table d'environnement du nouveau processus est passé en tant que en dernier argument

_execlp, _spawnlp

Oui

Liste

hérité du processus appelant

_execlpe, _spawnlpe

Oui

Liste

Le pointeur à la table d'environnement du nouveau processus est passé en tant que en dernier argument

_execv, _spawnv

Non

Tableau

hérité du processus appelant

_execve, _spawnve

Non

Tableau

Le pointeur à la table d'environnement du nouveau processus est passé en tant que en dernier argument

_execvp, _spawnvp

Oui

Tableau

hérité du processus appelant

_execvpe, _spawnvpe

Oui

Tableau

Le pointeur à la table d'environnement du nouveau processus est passé en tant que en dernier argument

Voir aussi

Référence

Package de runtime par catégorie