在进行大量详细说明时,如何“避免”应用程序没有响应?

时间:2011-09-18 15:41:32

标签: .net

当我在我的.net应用程序上午餐时,应用程序似乎被“阻止”了。所以我问你:如何限制特定方法的cpu工作负载? 唯一的方法是Application.DoEvents? 并且:如果我使用第三方dll,出于同样的原因(大的细节)似乎阻止(没有响应)我的应用程序怎么办?

编辑:也许线程是答案,但是,现在,我还有另一个问题:是否有可能'限制'cpu使用到一个线程?

1 个答案:

答案 0 :(得分:1)

  

如何“避免”应用程序在进行大量详细说明时没有响应?

在与主线程不同的线程上运行导致阻塞的任何内容。

  

如何限制特定方法的cpu工作负载?

您不能为特定方法限制它。仅适用于特定线程。这不会解决阻塞问题。

  

也许线程就是答案

不,不是也许答案。

  

但是,现在,我还有另一个问题:是否有可能'限制'cpu使用到一个线程?

好吧,你可以尝试设置Thread.Priority。请注意,操作系统不必遵循您设置的优先级(因此,尝试)。此外,这只会更改调度线程执行的优先级。如果没有其他线程需要CPU时间,那么当然你的线程仍会在CPU上安排。