我想得到这个问题的答案:为什么当没有执行任何操作时,我的Python程序占用14%的CPU,但是当执行循环内的操作(切换)时,它只有4%? (我使用的是操作系统、键盘、pyautogui、时间和来自 PIL 的图像)
所以问题是,除了检查键盘按下之外,不执行任何操作时,比执行所有按下和图像查找时需要更多的 CPU。
我尝试在网上搜索这个答案,但搜索不成功。
toggle = False
while True:
if keyboard.is_pressed(TOGGLE_KEY):
toggle = not toggle
if toggle:
print('Dialogue Skipping ON.')
else:
print('Dialogue Skipping OFF.')
time.sleep(1)
if toggle:
pyautogui.click(*DIALOGUE_SKIP_POSITION)
pyautogui.press('space')
try:
dialogue = pyautogui.locateOnScreen(
dialogue_image, confidence=CONFIDENCE_THRESHOLD, region=SEARCH_REGION)
if dialogue:
pyautogui.click(dialogue)
except pyautogui.ImageNotFoundException:
pass
非常感谢查尔斯·达菲和马斯克林。您的评论帮助我解决了问题。
我决定使用
keyboard.wait(TOGGLE_KEY)