Note first of all that this question is not tagged winforms or wpf or anything else GUI-specific. This is intentional, as you will see shortly.
Second, sorry if this question is somewhat long. I try to pull together various bits of information floating around here and there so as to also provide valuable information. My question, however, is right under "What I would like to know".
I'm on a mission to finally understand the various ways offered by .NET to invoke a delegate on a specific thread.
What I would like to know:
I am looking for the most general way possible (that is not Winforms or WPF-specific) to invoke delegates on specific threads.
Or, phrased differently: I would be interested if, and how, the various ways to do this (such as via WPF's
Dispatcher) make use of each other; that is, if there is one common mechanism for cross-thread delegate invocation that's used by all the others.
What I know already:
There's many classes related to this topic; among them:
SynchronizationContext(inSystem.Threading)
If I had to guess, that would be the most basic one; although I don't understand what exactly it does, nor how it is used.AsyncOperation& .net winapi multithreading system.componentmodel synchronizationcontext