Hvad er en blød reference?

I Java®-kodningssproget henvises konstant til objekter, strenge og variabler, selvom programmereren ikke er opmærksom på disse referencer. Disse referencer kommunikerer direkte med affaldsopsamleren, en funktion, der samler unødvendig information og kaster den væk, så den ikke længere tager hukommelse op. Som standard er alle referencer stærke referencer og indstilles uden nogen kodning, hvilket betyder, at de ikke frigives til affaldsopsamleren. En blød reference gør det muligt at smide dataene væk. Det er midtvejsreference for alle ikke-stærke referencer.

Hver gang en programmør gør noget med Java®, det være sig så simpelt som at lave en streng eller oprette komplekse funktioner, henvises der til en henvisning. Programmereren behøver ikke at skrive en referencekommando; referencen oprettes automatisk og er som standard en stærk reference. Dette betyder, at dataene fra referencen ikke kan smides, fordi de er knyttet til integrerede objekter, der er nødvendige for hele scriptet.

Nogle data skal dog smides væk, fordi de ellers optager meget hukommelse. For eksempel, hvis en programmør bygger et script, hvor serienumre bruges, eller andre midlertidige oplysninger er indsamlet eller oprettet, bliver det at holde disse oplysninger skadeligt. Java®-programmet ville nægte at smide informationen væk, selv når det ikke er nødvendigt, og scriptet har brug for mere og mere hukommelse for at fungere.

Ved at specificere en streng eller sektion som en blød reference, som skal placeres i kodningen, fortæller dette affaldssamleren, at dataene kan frigives. Når strengen eller sektionen er frigivet, læses den som "null". Affaldssamleren, afhængigt af dens indstilling, bestemmer, hvornår dataene skal smides.

Der er tre ikke-stærke referencer: blød reference, svag reference og fantomreference. Den svage reference er den svageste, og dens data smides hurtigt væk. Bløde referencer, der er bedst til scripts, hvor midlertidige data kan bruges flere gange, er næste på linjen. En fantomreference smides næsten automatisk inden for et sekund og bør bruges sparsomt.

Hvor lang tid en blød reference forbliver afhænger normalt af mængden af ​​hukommelse på computeren. Hvis hukommelsen er fuld, ødelægger affaldssamleren først alle de svage referencer. Når alle de svage referencer er væk, og hvis hukommelsen stadig har brug for at rense data, bliver der derefter kastet bløde referencer næste gang.

ANDRE SPROG

Hjalp denne artikel dig? tak for tilbagemeldingen tak for tilbagemeldingen

Hvordan kan vi hjælpe? Hvordan kan vi hjælpe?