Dette begreb er at bruge en sidefil (engelsk, pagefile).
Det er operativsystemet som beslutter hvornår og hvordan sidefilen skal bruges, ikke programmerne. Det skal tænkes mere som en nødløsning fra operativsystemet til at undgå at måtte tvinge programmer til at lukke. En bruger ville nok få det træls hvis Windows lukkede Photoshop for frigøre hukommelse før der kunne nåes at gemme. Med sidefilen kan Windows flytte åbne programmer til disken. Hvis man så senere prøver at åbne det gamle program kan computeren godt 'lagge' meget; en disk, selv SSD, er stadig mærkbart langsommere end RAM. Så det skal ses mere som noget operativsystemet bruger til nogle småting og en nødløsning i tilfælde den er ved at løbe tør for RAM at uddele - og ikke som en måde fra applikations-udviklere at tilgå ekstra 'RAM'.
Der er ingen indstilling i VS for at tvinge et program til at gøre brug af den. Man kan teknisk set med besvær omgå og lave sit eget sidefil system med 'memory-mapping' men det ville være tosset. Ved at på Linux kan man indstilling hvor aggressiv den er i brugen af den.
Du finder indstillingen under højreklik på
"This PC"/Denne PC -> Properties -> Advanced System Settings
og så
http://www.sevenforums.com/attachments/performance-maintenance/384040d1458781697t-page-file-ssd-32gb-ram-advanced-system-settings.jpg .
Om at gøre det med applikationer som bliver publiceret kan jeg kun sige: hvis et program (kunne og) ændrede på min sidefil vil det program hurtigt blive afinstalleret.
Du nævnte i den anden tråd at du have ~24Gb ram. Hvis du har brug for mere, hvordan ville programmet så køre på en almindelig brugers computer med kun 4 eller 8Gb? Hvis dit program bruger for meget hukommelse, bør du, (1) se om der er steder hvor du holder fast i noget hukommelse der ikke længere skal bruges, eller (2), ændre programmet til at bruge mindre, f.eks. ved at data strukturer deler noget data bedre.
F.eks:
- Dim myVar as HugeDataStructure;
- //....
- // Nu har vi ikke brug for myVar mere
- myVar = null;
- // Nu kan hukommelse fra myVar genbruges:
- Dim myVar2 as OtherLargeDataStructure;
- //....
Indlæg senest redigeret d. 29.12.2016 02:42 af Bruger #14645