Bitiş Görevi, Bitiş İşlemine göre ne gibi avantajlara sahiptir?


9

Bildiğim kadarıyla, bir uygulamayı (veya dondurulmuş bir uygulamayı) her durdurmak istediğimizde TaskManager'a gideceğiz, uygulamayı seçeceğiz Go to Processve işlemi sonlandıracağız. "Bitiş İşlemi", "Bitiş Görevi" yerine tercih edilir (bazen "bitiş görevi" yine de çalışmaz).

End Task için resim:

resim açıklamasını buraya girin

End Process için resim:

resim açıklamasını buraya girin

Ancak, http://technet.microsoft.com/tr-tr/library/bb726964.aspx :

İşlemleri incelerken, uygulamaların ana bir işlemi olmasına rağmen, tek bir uygulamanın birden çok işlemi başlatabileceğini unutmayın. Genellikle, bu işlemler ana uygulama işlemine bağlıdır ve ana uygulama işlemini sonlandırdığınızda veya Görevi Sonlandır'ı kullandığınızda durdurulur. Bu nedenle, genellikle bağımlı işlemler yerine ana uygulama işlemini veya uygulamanın kendisini sonlandırmak istersiniz.

Uygulamayı durdurduğumda işlem durdurulduğundan "Görevi Sonlandır" ın tercih edildiğini söylüyorlar. Ama mantıklarını hiç anlamıyorum, neden sadece süreci durdurmuyorsunuz?

Ne gibi avantajları Ending Taskvar Ending Process?

Yanıtlar:


13

En az bir penceresi olan programlar için Görevi SonlandırX "Kapat" düğmesini tıklatmakla aynı işlemi yapar - WM_CLOSEiletiyi o pencereye göndererek pencereden kapatılmasını ister. (Konsol pencereleri için eşdeğerdir CTRL_CLOSE_EVENT.) Program kullanıcıdan değişiklikleri kaydetmesini veya çeşitli temizleme görevleri yapmasını isteyebilir. İşlem uyumluysa, Görev Yöneticisi birkaç saniye bekler ve hala çalışıyorsa işlemi sonlandırmaya devam eder.

İşlem dondurulursa veya pencere iletilerini başka şekilde işlemezse, elbette, Görevi Sonlandır veya Kapat düğmesi çalışamaz. Bu durumlarda, Windows genellikle programı zorla sonlandırmanızı ister, ancak programa yanıt vermek için yeterli zaman verdikten sonra.

Bu arada, İşlemi Sonlandır düğmesi görevler veya pencerelerle ilgilenmez - TerminateProcess()işlevi çağırır ve Windows işlemi bildirmeden veya temizleme şansı vermeden derhal yok eder.

(Bellek gibi kaynaklar işlem tamamlandıktan sonra otomatik olarak serbest bırakılır; ancak, program bunları oluşturduysa çeşitli geçici dosyalar kalabilir ve elbette, işlem verilerin kaydedilmesinin ortasında sonlandırılırsa veri bozulması riski vardır.)

Ayrıca bakınız:


2
İşte bu yüzden Son Görev dondurulmuş programlar için çalışmıyor, değil mi?
Daniel Beck

2

Diğer iki cevaplar fark açısından ne olduğunun anlatılmasının güzel bir iş yapmak Ne olur, ama sadece onlar açısından nasıl farklı perspektife koymak nasıl bu olur ikincisi için Windows söyler iken, eski sona programı söyler öldürmek program.

Bir benzetme olarak, birisinden eşyalarını toplamasını ve odadan çıkmasını istemek ile bir fedai'ye derhal ve zorla kıpırdatmasını söylemek arasındaki fark gibidir.


1

Ayrıntılı açıklamak için: Görevi Sonlandır, uygulamayı zarif bir şekilde kapatmaya çalışır. Asılırsa, size "şimdi sonlandır" seçeneği sunar. Bu size süreci öldürme konusunda iki fayda sağlar (ki bu sadece kaba kuvvet onu siler):

  1. Windows Vista (ve daha üstü) ile kayıtlı uygulamalar için kilitlenme kurtarmayı etkinleştirir Kısa MSDN açıklaması
  2. hata raporu göndermeye izin verir

-7

Bu sadece terminolojide bir tutarsızlıktır. Muhtemelen Microsoft, batı sahilinde görev söylerken, doğu sahilinde teknik olarak doğru süreci kullanıyor.

Teknik olarak hala süreci sonlandırıyor. Görev muhtemelen bir pencere gösteren bir süreç sarmalayıcıdır? Görev yöneticisinin yardımı da tanımlamaz.


3
" Görev " terimi doğrudur; "süreç" ten farklı bir anlamı vardır.
user1686
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.