调度员 - 它是如何工作的?

ebb*_*ebb 7 .net c# windows multithreading

在阅读了Dispatcher该类的文档之后,我意识到它也可以用于非UI排队操作.

那么Dispatcher班级实际上是如何运作的?我知道这一点,它的主要工作是将操作排入特定线程 - 但它如何将这些操作"发送"到线程?线程如何"获得"这些行为?

我最好的猜测是每个线程都有某种"线程队列",但我再也不知道了.

Str*_*llo 1

嗯,显然 Dispatcher 队列实现看起来像 Win32 消息泵,但事实并非如此(尽管它使用相同的 User32 消息和线程模型)。