A system and method for reducing object instances and making efficient use
of memory. A WeakHashMap class provided by the Java programming language
is utilized to maintain a map of unique objects in memory. When a new
candidate object is presented, the map is searched for an equivalent
object instance and returned for use if found. If an equivalent object
instance is not found, the new candidate object is unique, and is
therefore added to the map. Each entry of the map stores key and value
pairs. In adding the new candidate object to the map, the key portion of
the entry is set to the new candidate object. The value portion of the
entry is set to a weak reference which also refers to the new candidate
object. Once an object in the map is no longer in use, the object is
automatically purged from the memory by making use of automatic garbage
collection capabilities provided by Java.
Ένα σύστημα και μια μέθοδος για τις περιπτώσεις αντικειμένου και την αποδοτική χρήση της μνήμης. Μια κατηγορία WeakHashMap που παρέχεται από τη γλώσσα προγραμματισμού της Ιάβας χρησιμοποιείται για να διατηρήσει έναν χάρτη των μοναδικών αντικειμένων στη μνήμη. Όταν ένα νέο αντικείμενο υποψηφίων παρουσιάζεται, ο χάρτης αναζητάται για μια ισοδύναμη περίπτωση αντικειμένου και επιστρέφεται για τη χρήση εάν βρίσκεται. Εάν μια ισοδύναμη περίπτωση αντικειμένου δεν βρίσκεται, το νέο αντικείμενο υποψηφίων είναι μοναδικό, και επομένως προστίθεται στο χάρτη. Κάθε είσοδος του χάρτη αποθηκεύει τα ζευγάρια κλειδιών και αξίας. Στην προσθήκη του νέου αντικειμένου υποψηφίων στο χάρτη, η βασική μερίδα της εισόδου τίθεται το νέο αντικείμενο υποψηφίων. Η μερίδα αξίας της εισόδου τίθεται μια αδύνατη αναφορά που αναφέρεται επίσης στο νέο αντικείμενο υποψηφίων. Μόλις δεν είναι πλέον ένα αντικείμενο στο χάρτη σε χρήση, το αντικείμενο εξαγνίζεται αυτόματα από τη μνήμη με τη χρισημοποίηση των αυτόματων ικανοτήτων συλλογής απορριμάτων που παρέχονται από την Ιάβα.