Sikuli 在大 while 循环之后滞后
Sikuli lags after big while loop
我有一个运行 200 次并单击按钮的 while 循环。
在 运行 大约 90 次之后,它突然变慢了大约 8 倍。所以 while 循环工作得很好,但它只是无缘无故地开始滞后。
i = 200
while i!= 0:
click(img)
sleep(1)
print i
i-=1
我不知道这是怎么发生的。有没有其他人遇到过这种情况?
这可能与您的处理器速度有关。最好使用高速处理器。
使用 wait() 而不是 sleep()。你会得到不同的表现
试试这个代码:
i = 200
imgLoc = find("image.png")
while i != 0:
imgLoc.click()
wait(1)
print(i)
i = i -1
在您的代码中,click(img)
行一直在寻找屏幕上的图像。
更有效的方法是首先找到图像,这样我们现在就可以找到它的位置。
然后单击图像 x 次。
如果您执行此操作 200 次,这会使代码更快。
我还相信 wait()
在某些计算机上运行得更快。
不要问我为什么....
根据post here。
如果您在 MacOS 中遇到此问题,您可以尝试 运行 <path to your setup folder>/runsikulix -r yourScript.sikuli
而不是 运行 使用 sikuli IDE 的脚本。
我有一个运行 200 次并单击按钮的 while 循环。 在 运行 大约 90 次之后,它突然变慢了大约 8 倍。所以 while 循环工作得很好,但它只是无缘无故地开始滞后。
i = 200
while i!= 0:
click(img)
sleep(1)
print i
i-=1
我不知道这是怎么发生的。有没有其他人遇到过这种情况?
这可能与您的处理器速度有关。最好使用高速处理器。
使用 wait() 而不是 sleep()。你会得到不同的表现
试试这个代码:
i = 200
imgLoc = find("image.png")
while i != 0:
imgLoc.click()
wait(1)
print(i)
i = i -1
在您的代码中,click(img)
行一直在寻找屏幕上的图像。
更有效的方法是首先找到图像,这样我们现在就可以找到它的位置。
然后单击图像 x 次。
如果您执行此操作 200 次,这会使代码更快。
我还相信 wait()
在某些计算机上运行得更快。
不要问我为什么....
根据post here。
如果您在 MacOS 中遇到此问题,您可以尝试 运行 <path to your setup folder>/runsikulix -r yourScript.sikuli
而不是 运行 使用 sikuli IDE 的脚本。