Forum: .NET-Framework (managed code)
C#
by Khabarakh,
9. Okt 2010
:gruebel: Egal ob das Completed-Event mit SendMessage oder PostMessage abgesetzt wird, die Message muss sich doch hinter alle Fortschrittsmeldungen einreihen und wird dadurch auch erst abgearbeitet, wenn die ProgressBar schon auf 100% steht. Am Ende eines Threads dürfte es ja wirklich keinen Unterschied mehr zwischen einem synchronen und asynchronen Aufruf geben.
Forum: .NET-Framework (managed code)
C#
by Khabarakh,
8. Okt 2010
In der BCL laufen sowohl Control.Invoke als auch BeginInvoke über PostMessage, aber grundsätzlich hast du recht: Wenn man nicht explizit auf einen synchronen Aufruf angewiesen ist, ist BeginInvoke eigentlich immer zu bevorzugen. Und warum nicht auch beim letzten Aufruf :gruebel: ?
Forum: .NET-Framework (managed code)
C#
by Khabarakh,
8. Okt 2010
Es gäbe noch den BackgroundWorker, der das Invoken für dich übernimmt und in zwei hübsche Events packt. Außerdem, äh, kann er auf die Form geklatscht werden :mrgreen: .
@implementation: Naja, solange man im Thread halbwegs einschätzen kann, wann mal wieder der Fortschritt angezeigt werden sollte, ist das eindeutig der leichtere Weg. Und auch wenn es hier nicht gerade um lebenswichtige Daten...