Frage

Auf Async WebService auf der vollständigen Veranstaltung gibt es einen Code wie:

Debug.Assert(Dispatcher.CheckAccess()); // don't do marshaling here- it's already runinng on UI thread!

Weiß jemand, was passiert, wenn ich diesen Code entferne? Oder in der Lage, meine Fragen zu beantworten?

War es hilfreich?

Lösung

Das ist eine Debugging -Behauptung. Das Entfernen hat keinen Einfluss auf den Produktionscode.

Was es tut, nutzt es jedoch Dispatcher.Checkaccess () Um zu überprüfen, ob Sie sich während der Exektution an diesem Punkt auf dem UI -Thread befinden. Wenn Sie diese Methode von einem Hintergrund -Thread aufrufen, schlägt die Behauptung fehl.

Das Entfernen dies kann sich auf Ihre Fähigkeit auswirken, dies in Zukunft zu debuggen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top