The present invention discloses a system for transparent local and
distributed memory management. The invention overcomes the prior art's
requirement of keeping track of whether a memory space allocated to a new
object or a new program or data structure can be reclaimed. According to
the present invention an autorelease pool is created at the beginning of a
new duty cycle. The autorelease pool retains the newly allocated memory
space during the duty cycle. The autorelease pool is automatically
disposed of at the end of the duty cycle. As a result of disposing the
autorelease pool, the newly allocated memory space is reclaimed (i.e.,
deallocated). The present invention is useful in distributed networks
where different programming conventions on remote and local machines made
the prior art's memory management task particularly difficult. The present
invention is also useful in an object-oriented programming environment.
A invenção atual divulga um sistema para a gerência local e distribuída transparente da memória. A invenção supera a exigência de arte prévia de manter-se a par se um espaço de memória alocado a um objeto novo ou a uma estrutura nova do programa ou de dados pode ser recuperado. De acordo com a invenção atual um pool do autorelease é criado no começo de um ciclo de dever novo. O pool do autorelease retem o espaço de memória recentemente alocado durante o ciclo de dever. O pool do autorelease é disposto automaticamente na extremidade do ciclo de dever. Em conseqüência de dispo o pool do autorelease, o espaço de memória recentemente alocado é recuperado (isto é, deallocated). A invenção atual é útil nas redes distribuídas onde as convenções de programação diferentes em máquinas remotas e locais fizeram a tarefa da gerência da memória de arte prévia particularmente difícil. A invenção atual é também útil em um ambiente de programação object-oriented.