Två viktiga effektivitetsparametrar för sopuppsamlare är genomströmning overheads och paustider som de introducerar. Mycket responsiva system behöver använda samlare med så korta paustider som möjligt. Pauslängderna har minskat avsevärt under åren, särskilt genom användning av samtidiga sopsamlare. För moderna samtidiga samlare, är den längsta pausen vanligtvis skapas av behovet av att atomiskt skanna runtime stacken. Alla praktiska samtidiga samlare som vi är medvetna om måste få en ögonblicksbild av pekaren på varje tråds runtime stack, för att återta objekt korrekt. För att ytterligare minska längden på samlarpauserna föreslogs inkrementella stackskanningar. Men tidigare sådana metoder använder lås för att stoppa mutatorn från att komma åt en stack ram medan det skannas. Dessa metoder introducerar därför en potentiell lång och oförutsägbar paus för en mutatortråd. I detta arbete föreslår vi den första samtidiga, inkrementella och låsfria stack scanning för sopfångare, vilket möjliggör hög lyhördhet och stöd för program som använder finsynkronisering för att undvika lås. Vår lösning kan användas av alla samtidiga samlare som vi är medvetna om, det är lock-fri, det ställer en försumbar overhead på programgenomförandet, och det stöder de speciella i-stackar referenser som finns i språk som C#.
Den första samtidiga, inkrementella, låsfri stack scanning mekanism för sophämtning presenterades av Kliot et al. Hoppa över det.
A lock-free, concurrent, and incremental stack scanning for garbage collectors
{'venue': "VEE '09", 'journal': None, 'mag_field_of_study': ['Computer Science']}