BackgroundWorker kullanarak bir thead oluşturma ve System.Threading.Thread kullanarak bir iş parçacığı oluşturma arasındaki fark nedir?BackgroundWorker ve System.Threadding.Thread arasındaki fark
cevap
BackgroundWorker sınıf temelde ... Thread oluşturma ve izleme sürecini soyutlar ve size operasyon (ProgressChanged) ilerlemesini rapor ve işlem tamamlandığında (RunWorkerCompleted) belirlemek üzere olay kaynaklı API verir
Bunun en yaygın kullanımlarından biri, uzun süren bir işlem arka planda yürütülürken bir Windows GUI yanıtını korumaktır. Temel olarak, sadece bir sarmalayıcı System.Threading.Thread için biraz daha basit (adından da anlaşılacağı gibi) yapmak için tasarlanmış bir addır (adından da anlaşılacağı gibi!)
BackgroundWorker
aslında temsilcilerle eşzamansız iş parçacığı için bir sarmalayıcıdır - yansıtıcıyı kullanarak bir tane görebilirsiniz Başlama/sonlandırma yöntemlerini buna göre çağırır. Bu, System.Threading.Thread
'dan, yepyeni bir iş parçacığı başlatmanın aksine iş parçacığı kullandığı için farklıdır.
Arka plan işçisinin kullanılmasının temel nedeni, windows form uygulamalarıyla güzel bir şekilde tıkanmasıdır.
+1. Buna ek olarak, bir STA Com nesnesini, daire ayarlanamayacağı için çağırmanız gerekiyorsa, BackgroundWorker'ın iyi bir seçim olmadığını bilen kişiler için yararlıdır. –
- 1. Thread.Start() vs BackgroundWorker
- 2. XeLaTeX ve pdfLaTeX arasındaki fark
- 3. javax.sql ve java.sql arasındaki fark?
- 4. netTcpContextBinding ve netTcpBinding arasındaki fark
- 5. Sürücü ve sağlayıcı arasındaki fark
- 6. HttpCookie ve Çerez arasındaki fark?
- 7. typedef arasındaki fark ve tanımlamak
- 8. Python'da {} ve [] arasındaki fark nedir?
- 9. Dize [] ve [dize] arasındaki fark
- 10. Redis ve kafka arasındaki fark
- 11. mapM ve forM arasındaki fark
- 12. ASCIIEncoding ve Encoding Arasındaki Fark
- 13. NSLog ve DLog arasındaki fark
- 14. jsRender ve jsViews arasındaki fark
- 15. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 16. java.util.Scanner ve java.util.Scanner arasındaki fark. *
- 17. ServiceProcessInstaller ve ServiceInstaller arasındaki fark
- 18. string.h ve strings.h arasındaki fark
- 19. dtrtrs ve dtrsm arasındaki fark
- 20. Kodlama ve harmanlama arasındaki fark?
- 21. IsGenericType ve IsGenericTypeDefinition arasındaki fark
- 22. autoconf ve autoreconf arasındaki fark
- 23. SCM ve SVN arasındaki fark
- 24. Ondalık ve ondalık arasındaki fark
- 25. önünde arasındaki fark() ve başlamak()
- 26. C++ - (*) arasındaki fark. ve ->?
- 27. $ arasındaki fark nedir? ve PowerShell
- 28. Ipa ve xcarchive arasındaki fark
- 29. Arşivleme ve sıkıştırma arasındaki fark
- 30. array.count ve array.size arasındaki fark
Temel olarak, System.Threading.Thread için sadece bir sarmalayıcı iş parçacığını biraz daha basit hale getirmek için tasarlandı mı? – Icemanind
http://stackoverflow.com/questions/1506838/backgroundworker-vs-background-thread/1507337#1507337 –
@MattDavis Harika bağlantı, bağlantıya SADECE bir açıklama veya başka bir şey olsaydı daha anlamlı olurdu. – Randolph