1
18
首先,现在不是19岁。 当运行一个“你好,世界!”WPF应用程序,我在任务管理器中看到10个线程。当使用Visual Studio调试器运行同一个应用程序时,它使用19。因此,首先,将其中9个因素作为调试器的开销添加。 现在为了10 . 根据一篇叫做 "Build More Responsive Apps With The Dispatcher" ,wpf从两个线程开始:
但是根据 this article ,所有托管应用程序中都有许多基本线程,无论是否为WPF:
从开始 二 从wpf中,添加gc和终结器以 四 . 要访问的调试器线程(所有托管应用程序在不调试时都有一个托管应用程序)中的外接程序 五 . 添加计时器 六 . 并且,在VS之外启动WPF应用程序之后,将调试器附加到它,我可以看到线程池中有两个工作线程。这可能是最低限度的。这使我的应用程序 八 . 有两个我不能解释清楚,但它们很可能是用于互操作的COM线程(它们绝对不是托管线程)。这个 second article 我引用了更多关于这些的讨论。 但这里故事的真正寓意是,不要担心他们。如果是香草“你好,世界!”应用程序使用10,这是你的基线。 只担心创建的线程超过了这个最小值。 |
Kryptonit364 · 在DataGrid中隐藏调整大小和选择列 2 年前 |
hassan Ma · 从顶部将文本插入WPF文本块 2 年前 |
Arijit · 移动画布内绘制的矩形 2 年前 |
juraj14466 · C#WPF实时图表将点渲染为图像 2 年前 |