Applicataion.DoEvents()在Windows窗体中。
我很确定这是一种非常早期,非常原始的WindowsForms多任务处理形式。它具有所有的故事和机制:暂停执行调用事件。使其余的所述事件成为后续运行的延续。允许其他事件/进程运行。只是有一些其他问题,因为MT是通过EventQueue实现的。甚至可能递归调用队列。
但是我只是碰到了一个海报,说[[insists它与“多任务处理无关”。我无法理解我对功能或多任务处理的理解。
注意:我明确地认为Mutltithreading仅是Multi tasking的实现。众所周知,DoEvents()不是Multi threading的一种形式,众所周知how poorly that one works in GUI Environments。
我不知道这是基于意见的。至少这是一项专业意见,但这应该使它具有一定的回答意义。通常,您不必关心此“ DoEvents”,但是如果您知道某个过程运行了1秒钟以上,则应该手动调用它,将控件传递给另一个方法,从而停止执行自己的代码,让其他代码运行,然后继续自己的代码。因此它绝不是异步的,而是某种“多任务”。
它更多是一个控制结构,重要的是,您不知道内部发生了什么,您称它为“以防万一”-其他人可能需要一毫秒的CPU。