14. januar 2008 - 01:04
Der er
11 kommentarer
Ram blir fyldt op, selvom jeg null´er stor byte array.
Hej I en klasse har jeg en private byte[] content; Som jeg langsomt fylder op med optil 40 mb data. På et tidspunkt er procesen overstået og jeg gemmer hele indholdet at byte[] content som en fil. Lige efter skriver jeg content = null; Men rammen er stadig fyldt op af de 40 mb. Jeg har et ønske om at lige efter at jeg har skrevet content = null, skal ramen blive frigivet igen. (Det er muligt at dette sker hen ad tiden det har jeg ikke testet) Burde ram blive frigivet igen, kan det være en fejl i min kode ? Skal jeg kalde en oprydnings metode i .NET ? Det er w3wp.exe NETWORK SERVICE jeg kigger på i task manager. Mvh og tak hvis nogen kan hjælpe Jeg kigger på ram forbruget
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
14. januar 2008 - 01:05
#1
Det er noget som forgår på en server i en ASP.NET applikation.
14. januar 2008 - 01:07
#2
Hey.. Nøh.. Det må gerne ligge der. Når runtime'n finder ud af, at den skal bruge noget memory, så sætter den garbage-collectoren i gang med at fixe det for dig. /B :)
14. januar 2008 - 01:17
#3
Hey. Tak for svar. Kan jeg tvinge .NET til at køre garbage collectoren. Det er ikke sikkert at jeg så vil bruge det i produktion men jeg vil gerne lige teste hvad der sker. Mvh
14. januar 2008 - 01:21
#4
Fandt lige selv GC.Collect(); på tre sek. lejer lige med det, undskyld at jeg er så hjælpeløs. Mvh
14. januar 2008 - 01:36
#5
Tak, det virker med GC.Collect . Og jeg kan også se at der bliver ryddet op af selv hvis jeg overbelaster kunstigt. Lig svar for point. Tak
14. januar 2008 - 01:47
#6
Bemærk at: content = null; er dårlig kode stil i langt de fleste tilfælde - bare lad content gå ud af scope. At kalde: GC.Collect(); vil normalt forringe performance - .NET kører selv GC hvis der er brug for det.
15. januar 2008 - 02:31
#7
Tak for rådet, men tror du det nogen skade kan gøre at skrive content = null.
15. januar 2008 - 02:47
#8
Nej. Der sker heller ikke noget ved at du indsætter 3 empty statements: ; ; ; i din kode. Men det ser ikke kønt ud !
15. januar 2008 - 02:50
#9
Det er en COM'isme som bl.a. en del ASP programmører har, men den hører ikke hjemme i .NET !
25. februar 2008 - 04:08
#10
Tid at få afsluttet her ?
12. marts 2008 - 20:03
#11
Jamen så lader jeg være med at skrive content = null og heller ikke ; ; ; Tak for det råd også. Mvh
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.