我有一个脚本,它位于游戏之外,读取像素,然后通过“按键”、“点击”等方式对信息做出反应。为了得到像素,我使用了这样的代码
def function():
a = win32gui.GetPixel(win32gui.GetDC(win32gui.GetActiveWindow()), x, y)
return a
为了快速获取屏幕上的像素值并让脚本快速反应。
它一开始很好,能够及时执行所需的一切,但速度会越来越慢。
通过尝试使用其他类似的方法,我已经将问题源标识为GetPixel
^{pr2}$这太慢了,但是如果我运行一个包含这些其他方法的while循环,它们不会像GetPixel的fast方法那样逐渐地执行得越来越慢(内存泄漏)
我使用的是后来删除的局部变量,等等,这是GetPixel的问题。我只是不知道它没有删除的内容在哪里,如何告诉Python删除它,如果可能的话,等等
您应该为win32gui.GetDC的每次调用调用调用win32gui.ReleaseDC,如GetDC所述:
相关问题 更多 >
编程相关推荐