0

我一直在查看我的软件的速度,试图在这里和那里细化一条线,我可以加快速度。我不需要一般优化方面的帮助。我发现了一个特定的后台非托管代码行,它似乎需要很长时间,即使考虑到调用的数量也是如此。这是行:

system.windows.forms.unsafenativemethods.getwindowtext(handleRef hWnd, StringBuilder lpstring, int nMaxCount)

有人知道吗:

  1. 如果它没有用,如何加速/绕过它/用更好的东西替换它。

  2. 特别是我会在我的代码中写一些导致它被调用的地方——这个例子越多越好!我在 Google 上找到了一些相关主题。但是这些都与一个特定的问题有关,例如当一个线程向另一个线程请求某些东西并且另一个线程已经分离时发生的错误。 此链接很有帮助,但我无法安静地了解它。任何和所有的帮助将不胜感激。

谢谢!

4

1 回答 1

1

听起来您使用Control.Text了很多 - 这似乎是最有可能调用GetWindowText.

如果您在每次模拟进行时都使用模拟结果更新您的 UI,那么您很可能仅通过限制更新速率(例如每秒更新 5 次)来显着提高性能。

于 2013-07-15T13:55:02.063 回答