控件阻塞操作在主线程执行
WinForm 采用单线程的 UI 模型,UI 线程承担着处理用户输入、更新界面显示等任务。要是用户控件里的阻塞操作在主线程运行,主窗体就会被阻塞。因为在阻塞期间,UI 线程没办法处理其他事件,这就会使主窗体界面卡顿、无法响应。
控件阻塞操作在新线程执行
若用户控件的阻塞操作是在新线程里执行的,主窗体就不会被阻塞。这是因为新线程和 UI 线程是相互独立的,新线程中的阻塞操作不会影响 UI 线程处理其他事件。
WinForm 采用单线程的 UI 模型,UI 线程承担着处理用户输入、更新界面显示等任务。要是用户控件里的阻塞操作在主线程运行,主窗体就会被阻塞。因为在阻塞期间,UI 线程没办法处理其他事件,这就会使主窗体界面卡顿、无法响应。
若用户控件的阻塞操作是在新线程里执行的,主窗体就不会被阻塞。这是因为新线程和 UI 线程是相互独立的,新线程中的阻塞操作不会影响 UI 线程处理其他事件。