Süreç ve ortam denetimi
Bir programın içinden işlemleri başlatmak, durdurmak ve yönetmek için işlem denetimi yordamlarını kullanın. İşletim sistemi ortamı hakkındaki bilgileri almak ve değiştirmek için ortam denetimi yordamlarını kullanın.
İşlem ve ortam denetimi işlevleri
Yordam | Kullanma |
---|---|
abort |
ve tarafından atexit kaydedilen arabellekleri boşaltmadan veya işlevleri çağırmadan işlemi iptal etme _onexit |
assert |
Mantıksal hata için test |
_ASSERT , _ASSERTE makrolar |
benzer, assert ancak yalnızca çalışma zamanı kitaplıklarının hata ayıklama sürümlerinde kullanılabilir |
atexit |
Program sonlandırma sırasında yürütülmeye yönelik yordamları zamanlama |
_beginthread , _beginthreadex |
Windows işletim sistemi işleminde yeni iş parçacığı oluşturma |
_cexit |
Sonlandırma yordamları (temizleme arabellekleri gibi) gerçekleştirin exit , ardından işlemi sonlandırmadan denetimi çağıran programa döndür |
_c_exit |
Sonlandırma yordamları gerçekleştirin _exit , ardından işlemi sonlandırmadan denetimi çağıran programa döndür |
_cwait |
Başka bir işlem sonlandırana kadar bekleyin |
_endthread , _endthreadex |
Windows işletim sistemi iş parçacığını sonlandırma |
_execl , _wexecl |
Bağımsız değişken listesiyle yeni işlem yürütme |
_execle , _wexecle |
Bağımsız değişken listesi ve verilen ortamla yeni işlem yürütme |
_execlp , _wexeclp |
Değişken ve bağımsız değişken listesini kullanarak PATH yeni işlem yürütme |
_execlpe , _wexeclpe |
Değişken, verilen ortam ve bağımsız değişken listesini kullanarak PATH yeni işlem yürütme |
_execv , _wexecv |
Bağımsız değişken dizisiyle yeni işlem yürütme |
_execve , _wexecve |
Bağımsız değişken dizisi ve verilen ortam ile yeni işlem yürütme |
_execvp , _wexecvp |
Değişken ve bağımsız değişken dizisi kullanarak PATH yeni işlem yürütme |
_execvpe , _wexecvpe |
Değişken, verilen ortam ve bağımsız değişken dizisini kullanarak PATH yeni işlem yürütme |
exit |
ve _onexit tarafından atexit kaydedilen işlevleri çağır, tüm arabellekleri boşalt, tüm açık dosyaları kapat ve işlemi sonlandır |
_exit |
Arabellekleri çağırmadan atexit veya _onexit boşaltmadan işlemi hemen sonlandır |
getenv , _wgetenv , getenv_s , _wgetenv_s |
Ortam değişkeninin değerini alma |
_getpid |
İşlem kimliği numarasını alma |
longjmp |
Kaydedilen yığın ortamını geri yükleme; yerel olmayan bir uygulamayı yürütmek için kullanın goto |
_onexit |
Program sonlandırma sırasında yürütme için zamanlama yordamları; Microsoft C/C++ sürüm 7.0 ve önceki sürümlerle uyumluluk için kullanın |
_pclose |
Yeni komut işlemcisini bekleyin ve ilişkili kanalda akışı kapatın |
perror , _wperror |
Yazdırma hata iletisi |
_pipe |
Okuma ve yazma için kanal oluşturma |
_popen , _wpopen |
Kanal oluşturma ve komutu yürütme |
_putenv , _wputenv , _putenv_s , _wputenv_s |
Ortam değişkeninin değerini ekleme veya değiştirme |
raise |
Çağrı işlemine sinyal gönderme |
setjmp |
Yığın ortamını kaydetme; yerel olmayanları yürütmek için kullanın goto |
signal |
Kesme sinyalini işleme |
_spawnl , _wspawnl |
Belirtilen bağımsız değişken listesiyle yeni işlem oluşturma ve yürütme |
_spawnle , _wspawnle |
Belirtilen bağımsız değişken listesi ve ortamıyla yeni işlem oluşturma ve yürütme |
_spawnlp , _wspawnlp |
Değişken ve belirtilen bağımsız değişken listesini kullanarak PATH yeni işlem oluşturma ve yürütme |
_spawnlpe , _wspawnlpe |
Değişken, belirtilen ortam ve bağımsız değişken listesini kullanarak PATH yeni işlem oluşturma ve yürütme |
_spawnv , _wspawnv |
Belirtilen bağımsız değişken dizisiyle yeni işlem oluşturma ve yürütme |
_spawnve , _wspawnve |
Belirtilen ortam ve bağımsız değişken dizisiyle yeni işlem oluşturma ve yürütme |
_spawnvp , _wspawnvp |
Değişken ve belirtilen bağımsız değişken dizilerini kullanarak PATH yeni işlem oluşturma ve yürütme |
_spawnvpe , _wspawnvpe |
Değişken, belirtilen ortam ve bağımsız değişken dizisini kullanarak PATH yeni işlem oluşturma ve yürütme |
system , _wsystem |
İşletim sistemi komutunu yürüt |
Windows işletim sisteminde, oluşturulan işlem, yumurtlama işlemine eşdeğerdir. Herhangi bir işlem, işlem kimliğinin bilindiği diğer işlemleri beklemek için kullanabilir _cwait
.
ve _spawn
aileleri arasındaki _exec
fark, bir _spawn
işlevin denetimi yeni işlemden çağırma işlemine döndürebileceğidir. Bir _spawn
işlevde, belirtilmemişse _P_OVERLAY
hem çağırma işlemi hem de yeni işlem bellekte bulunur. Bir _exec
işlevde, yeni işlem çağrı işleminin üzerine bindirilir, bu nedenle yeni işlemin yürütülmesini başlatma girişiminde bir hata oluşmadığı sürece denetim çağrı işlemine geri dönemez.
ve _spawn
ailelerindeki _exec
işlevler arasındaki farklar, yeni işlem olarak yürütülecek dosyayı bulma yöntemini, bağımsız değişkenlerin yeni işleme geçirildiği formu ve aşağıdaki tabloda gösterildiği gibi ortamı ayarlama yöntemini içerir. Bağımsız değişken sayısı sabit olduğunda veya derleme zamanında bilindiğinde bağımsız değişken listesini geçiren bir işlev kullanın. Çalışma zamanında bağımsız değişken sayısı belirlendiğinde bağımsız değişkenleri içeren bir diziye işaretçi geçiren bir işlev kullanın. Aşağıdaki tabloda yer alan bilgiler ve _exec
işlevlerinin geniş karakterli karşılıkları _spawn
için de geçerlidir.
_spawn
ve _exec
İşlev Aileleri
İşlevler | Dosyayı bulmak için değişken kullanma PATH |
Bağımsız değişken geçirme kuralı | Ortam ayarları |
---|---|---|---|
_execl , _spawnl |
Hayır | Liste | Çağrı işleminden devralındı |
_execle , _spawnle |
Hayır | Liste | Son bağımsız değişken olarak geçirilen yeni işlem için ortam tablosu işaretçisi |
_execlp , _spawnlp |
Yes | Liste | Çağrı işleminden devralındı |
_execvpe , _spawnvpe |
Yes | Dizi | Son bağımsız değişken olarak geçirilen yeni işlem için ortam tablosu işaretçisi |
_execlpe , _spawnlpe |
Yes | Liste | Son bağımsız değişken olarak geçirilen yeni işlem için ortam tablosu işaretçisi |
_execv , _spawnv |
Hayır | Dizi | Çağrı işleminden devralındı |
_execve , _spawnve |
Hayır | Dizi | Son bağımsız değişken olarak geçirilen yeni işlem için ortam tablosu işaretçisi |
_execvp , _spawnvp |
Yes | Dizi | Çağrı işleminden devralındı |