空闲时CPU使用率高

问题描述 投票:0回答:1

我想得到这个问题的答案:为什么当没有执行任何操作时,我的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
python cpu-usage
1个回答
1
投票

非常感谢查尔斯·达菲和马斯克林。您的评论帮助我解决了问题。

我决定使用

keyboard.wait(TOGGLE_KEY)

© www.soinside.com 2019 - 2024. All rights reserved.