[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] BUG: pygame leaks memory (?)



Use timers so you don't run on 100% CPU:

TIMER = pygame.NUMEVENT - 1
pygame.time.set_timer(TIMER, 50)

def show(self):
    # this is a simple frame dropping logic, so that the event queue
empties per call of show()
    # and within the time specified by pygame.time.set_timer
    updated=False
    for event in [pygame.event.wait(), *pygame.event.get()]:
        if event.type == QUIT:
            exit()
        elif event.type == TIMER and not updated:
            updated = True
            # update graphic here
            pygame.display.update()


I do find it surprising that pygame should be creating a memory leak
in this case, since none of the pygame functions you use,
pygame.event.get, pygame.Surface.fill, pygame.draw.rect are ones which
one would expect to permanently allocate memory for any obvious
reason.

cheers!
mar77i