Pygame замедляется без видимой причины - PullRequest
0 голосов
/ 25 мая 2019

У меня есть скрипт Python, который изменяет размеры изображений и отображает их. Через некоторое время (время меняется), программа замедляется до ползучести, и я не знаю, почему: в системе не закончились ОЗУ или термическое регулирование, но в оболочке нет ошибок, и загрузка процессора - это то, что обычно находится в режиме ожидания (2-3%), пока через ~ 15 секунд не появится новое изображение. Я также пытался изменить приоритеты программы, но это тоже не помогло.

run =  True
while run:
    gameDisplay.fill((0,0,0))
    image = Image.open(random_line())
    imaged = image.thumbnail((1280,1024))
    data = image.tobytes()
    size = image.size
    mode = image.mode
    img_r = pygame.image.fromstring(data, size, mode)
    rect = img_r.get_rect()
    rect.centerx = CENTREX
    rect.centery = CENTREY
    surface = gameDisplay.blit(img_r, rect) #Should be centre of display, see where variables are created
    pygame.display.flip()
    for i in range(disp): 
        for event in pygame.event.get():
            time.sleep(1)
            if event.type == pygame.QUIT:
                run = False
            # set run = False if escape is pressed
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_ESCAPE:  
                    run = False
                    pygame.quit()

Цикл while. Если вам нужно больше кода, пожалуйста, скажите мне!

Как я объяснил выше, в оболочке не было ошибок. Вывод, который я ожидаю, заключается в том, что программа будет продолжать работать с нормальной скоростью и отображать новое изображение каждую секунду или около того. Время не должно быть точным, просто приблизительным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...