Widziałem ten format Deployment.Current.Dispatcher.BeginInvoke (() => {...}) w jakimś kodzie. Czy był używany do pracy w tle? Jakie są jej ogólne zastosowania?Jaki jest pożytek z Deployment.Current.Dispatcher.BeginInvoke (() => {...})?
Odpowiedz
Nie, to nie jest do pracy w tle wątku - to do pracy na UI wątku. Zwykle jest to o nazwie z wątku tła, w celu manipulowania interfejsem użytkownika, który można wykonać tylko w wątku interfejsu użytkownika.
Treść wyrażenia lambda jest kodem, który chcesz wykonać w wątku interfejsu użytkownika.
Kod, który aktualizuje interfejs użytkownika z wątku innego niż wątek interfejsu użytkownika, powoduje wystąpienie nieważnego wyjątku dostępu do wątku krzyżowego.
Dyspozytor umożliwia przekazanie kodu do wątku interfejsu użytkownika z innego wątku.
Projekt, który umieściłem w tym poście, pokazuje to między innymi.
WebClient, HttpWebRequest and the UI Thread on Windows Phone 7
będziesz musiał użyć Deployment.Current. Dispatcher w aplikacji SilverLight, gdy wykonujesz pracę w wątku pracującym bez interfejsu użytkownika (w kontekście, który nie dziedziczy po DependencyObject) i musisz zaktualizować interfejs użytkownika.
- 1. Jaki jest pożytek z AtomicReferenceArray?
- 2. Jaki jest pożytek z __RequestVerificationToken?
- 3. Jaki jest pożytek z System.in.read()?
- 4. Jaki jest pożytek z window.external?
- 5. Jaki jest pożytek z typedef?
- 6. jaki jest pożytek z klasy ArraySegment <T>?
- 7. Jaki jest pożytek ze składni: =?
- 8. jaki jest pożytek z MemoryFile w Androidzie
- 9. Jaki jest pożytek z Invoke() w .net?
- 10. Jaki jest pożytek z posiadania? w java
- 11. Jaki jest pożytek z rozliczenia udevadm?
- 12. Jaki jest pożytek z -fno-stack-protector?
- 13. Jaki jest pożytek z zestawów wyświetlacza iCloud?
- 14. Jaki jest pożytek z ^: dynamic na defonce?
- 15. Jaki jest pożytek z adnotacją Hibernate @LazyCollection
- 16. Jaki jest pożytek z DECIMAL (x, 0)?
- 17. Jaki jest pożytek z performSelector w iOS
- 18. Jaki jest pożytek z tokena przeciw fałszerstwu?
- 19. jaki jest pożytek z metody Long.reverse (długiej)?
- 20. Jaki jest pożytek z pliku entitlements.plist?
- 21. Jaki jest pożytek z Array.prototype.slice.call (array, 0)?
- 22. Semafor - Jaki jest pożytek z początkowego liczenia?
- 23. Jaki jest pożytek z style = "clear: both"?
- 24. Jaki jest pożytek z - [NSUserDefaults registerDefaults:]?
- 25. Jaki jest pożytek z $ # w Bash
- 26. Jaki jest pożytek z "echo || true"?
- 27. Jaki jest pożytek z __kwdefaults__, który jest atrybutem funkcji funkcji?
- 28. Jaki jest pożytek z <elementu contentEditable = "true"> w html?
- 29. Jaki jest pożytek z udostępnionej zmiennej w VB.NET?
- 30. Jaki jest pożytek z etykiety worka w Hibernate?
Jon, popularność Twoich wpisów na SO jest wyjątkowa. Mój kapelusz jest od Ciebie :) –
Należy również wspomnieć, że BeginInvoke może być używany z samego wątku interfejsu użytkownika do działania uzupełniającego w wątku interfejsu użytkownika po pustej kolejce akcji interfejsu użytkownika. Zasadniczo odkładanie pracy do czasu, aż wątek interfejsu użytkownika nie będzie już nic robić. – JustinAngel
@JonSkeet: w jaki sposób mogę wykonać kod w wątku tła, ponieważ ten kod blokuje wyświetlanie paska postępu w interfejsie użytkownika – Rohaan