3
当我在我的.net应用程序中吃饭时,应用程序似乎被“阻止”。所以我问你:限制 cpu工作负载的一个特定方法? 唯一的方法是Application.DoEvents? 而且:如果我使用第三方dll,出于同样的原因(大的阐述)似乎阻止(没有响应)我的应用程序?如何避免应用程序在进行大规模阐述时没有响应?
编辑:也许线程是答案,但是,现在,我有另一个问题:是否有可能'限制'CPU使用率线程?
当我在我的.net应用程序中吃饭时,应用程序似乎被“阻止”。所以我问你:限制 cpu工作负载的一个特定方法? 唯一的方法是Application.DoEvents? 而且:如果我使用第三方dll,出于同样的原因(大的阐述)似乎阻止(没有响应)我的应用程序?如何避免应用程序在进行大规模阐述时没有响应?
编辑:也许线程是答案,但是,现在,我有另一个问题:是否有可能'限制'CPU使用率线程?
如何避免应用程序在进行大规模阐述时没有响应?
运行任何导致与主线程不同的线程的阻塞。
如何限制特定方法的cpu工作负载?
您不能限制它的特定方法。仅适用于特定的线程。这不会解决阻塞问题。
也许线程是答案
不,不是也许。它是的答案。
但是,现在,我还有另一个问题:是否有可能'限制'CPU使用线程?
那么,你可以尝试设置Thread.Priority
。请注意,操作系统不必遵守您设置的优先级(因此,尝试)。另外,这只会改变执行线程的优先级。如果没有其他线程需要CPU时间,那么当然你的线程仍然会在CPU上进行调度。
limitng CPU使用率不会帮助你的“没有回应的问题” – Numenor
试图限制cpu的使用只会让它阻塞*更长*。使用BackgroundWorker。 –