2016-04-20 56 views
-1

我在google上找不到它的任何东西C#WPF应用程序中主线程的职责是什么?

那么当我们调节主线程时会发生什么?

比方说,我已经开始3个后台线程从主线程

他们继续按预期运行

但是,他们会受到影响,当主线程节流分开?

假设有单独的线程

+1

你发现了什么?你真的编写了一个小应用程序来演示它吗?除此之外,当你扼杀主线程时,你将抓住UI,其他线程将独立运行,因为它们在不同的上下文中。 – t0mm13b

+0

这个问题太广泛了。行为将取决于线程相互之间的关联程度,如果有的话。在WPF或任何其他框架中,后台线程通常需要与“主”线程交互(例如WPF中的调度程序线程)。争用,计算或其他可能导致主线程放慢或等待的事情可能会影响其他线程,因为它们与该线程交互。 –

+0

谷歌,MSDN,堆栈溢出等实际上有关于线程如何工作的_lot_。那将是你开始的地方。如果你认为你有一个很好的[mcve],你无法理解,或者想要按照你的想法工作,那么你应该随时发布一个关于该MCVE的精确的,具体的问题。 –

回答

0

的系统资源不足,节流的主线程应该没事做,它已经催生了线程。我的理解是,线程对其他线程完全一无所知(除了偶尔等待或开始另一个线程)。它们本质上是彼此独立运行的,但它们共享共享资源,例如虚拟地址空间和系统资源,因为这些资源是由操作系统分配给特定进程的。如果一个进程被操作系统优先级“限制”或降低,那么属于该进程的所有线程也将被优先级调整或降低。

About Processes And Threads

+0

我在那里检查,但我找不到主要主线程的责任 – MonsterMMORPG

相关问题