当我在我的.net应用程序上午餐时,应用程序似乎被“阻止”了。所以我问你:如何限制特定方法的cpu工作负载? 唯一的方法是Application.DoEvents? 并且:如果我使用第三方dll,出于同样的原因(大的细节)似乎阻止(没有响应)我的应用程序怎么办?
编辑:也许线程是答案,但是,现在,我还有另一个问题:是否有可能'限制'cpu使用到一个线程?
答案 0 :(得分:1)
如何“避免”应用程序在进行大量详细说明时没有响应?
在与主线程不同的线程上运行导致阻塞的任何内容。
如何限制特定方法的cpu工作负载?
您不能为特定方法限制它。仅适用于特定线程。这不会解决阻塞问题。
也许线程就是答案
不,不是也许。 是答案。
但是,现在,我还有另一个问题:是否有可能'限制'cpu使用到一个线程?
好吧,你可以尝试设置Thread.Priority
。请注意,操作系统不必遵循您设置的优先级(因此,尝试)。此外,这只会更改调度线程执行的优先级。如果没有其他线程需要CPU时间,那么当然你的线程仍会在CPU上安排。