If the caller context equals the target context (e.g. if the caller is the UI thread and the object is affine
to the UI thread), the method is invoked immediately in the current context in a blocking way. Otherwise,
if a context switch is necessary, the method call is enqueued for later execution and the caller continues without waiting.
Methods that have a non-
void return type or
out parameters cannot be dispatched in non-blocking mode.
public const DispatchedExecutionMode NonBlockingContextSwitch