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.
La présente invention révèle un système pour la gestion locale et distribuée transparente de mémoire. L'invention surmonte la condition de l'art antérieur de maintenir si un espace mémoire assigné à un nouvel objet ou à une nouvelle structure de programme ou de données peut être repris. Selon la présente invention une piscine d'autorelease est créée au début d'un nouveau coefficient d'utilisation. La piscine d'autorelease maintient l'espace mémoire nouvellement assigné pendant le coefficient d'utilisation. La piscine d'autorelease est automatiquement débarassée à la fin du coefficient d'utilisation. En raison de disposer la piscine d'autorelease, l'espace mémoire nouvellement assigné est repris (c.-à-d., désaffecté). La présente invention est utile dans les réseaux distribués où les différentes conventions de programmation sur les machines à distance et locales faites la gestion de la mémoire de l'art antérieur chargent particulièrement difficile. La présente invention est également utile dans un environnement de programmation orienté objectivement.