Toon posts:

[VB.NET] Gebruik van het geheugen naar beneden te krijgen ?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben nu al een maand of 2 bezig met VB.NET en momenteel ben ik er zeer tevreden over. Zeker in vergelijking met VB6 dan. De mogelijkheden zijn veel uitgebreider, er is veel data standaard verwerkt in het .NET Framework enzo, maar 1 ding kan ik niet begrijpen, namelijk het gebruik van het geheugen...

Als ik een form maak met 1 knop op of gewoon nix op dan krijg je als je het compiled en uitvoerd al een geheugen gebruik van 8 tot 12 MB !!!!

ff een screenshot met het form/"code"/taskmanager om mijn bevinding te tonen.
screenie ... nogal groot

Zie ik ergens iets over het hoofd of is dit gewoon de manier waarop er nu gecompiled word die deze dingen veroorzaakt. Ik moet er geen verdere uitleg bij geven dat een beetje uitgebried programma al snel 20 Mb aan geheugen gaat gebruiken ...

  • Nexopheus
  • Registratie: Juni 2001
  • Laatst online: 28-01 13:50
Ik neem aan dat het grootste gedeelte van die 12,5 Mb het .NET Framework is, dat ook ingeladen moet worden...

Wat niet kan is nog nooit gebeurd


  • TheOneLLama
  • Registratie: Oktober 2000
  • Laatst online: 20-01-2022

TheOneLLama

A llama like no llama before

Welkom bij .NET, meer kan ik er niet van zeggen.. :)

Opera OpenOffice.org Jabber Psi jabber://llama@mordax.com


Verwijderd

Topicstarter
Ok ;) das eigenlijk al een beetje wat ik verwacht had.

iets van microsoft heeft het zo gemaakt en ... daar moet je maar leren mee leven, juist ? :D

  • TheOneLLama
  • Registratie: Oktober 2000
  • Laatst online: 20-01-2022

TheOneLLama

A llama like no llama before

Verwijderd schreef op 21 september 2002 @ 15:46:
Ok ;) das eigenlijk al een beetje wat ik verwacht had.

iets van microsoft heeft het zo gemaakt en ... daar moet je maar leren mee leven, juist ? :D
Winforms is eigenlijk een erorme Object Georienteerde wrapper om native API's van Windows heen. Daarnaast is er ook nog die VM. Volgens mij als je je applicatie op de juiste manier minimaliseerd komt er weer een zooi RAM vrij (ergens in een thread op GoT hier gezien, meer weet ik er niet van).

Opera OpenOffice.org Jabber Psi jabber://llama@mordax.com


Verwijderd

TheOneLLama schreef op 21 september 2002 @ 15:53:
[...]


Winforms is eigenlijk een erorme Object Georienteerde wrapper om native API's van Windows heen. Daarnaast is er ook nog die VM. Volgens mij als je je applicatie op de juiste manier minimaliseerd komt er weer een zooi RAM vrij (ergens in een thread op GoT hier gezien, meer weet ik er niet van).
Er was inderdaad een tijd terug een topic daarover. Toen werd er gezegd dat als je het programma minimaliseert in de traybar, dat windows 'zal denken' dat je het programma de eerste tijd niet nodig zal zijn. Wanneer je vervolgens het programma weer maximaliseert, zal het programma in de meeste gevallen minder geheugen in beslag nemen vergeleken na het opstarten van het programma.

Als ik mijn programma minimaliseer in de tray, neemt het zo'n 0.5-1mb ram in beslag, terwijl het na het opstarten zo'n 15mb verbruikte. Als ik vervolgens het programma weer maximaliseer verbruikt het zo'n 7mb.

Mijn computer heeft 512mb ram, en het maakt mij eerlijk gezegd niet veel uit of het nu 15mb verbruikt, of 7mb :).

Verwijderd

Zo'n zelfde app die in VB.net 8 tot 12 mb is bij C# hetzelfde echter als ik minimalizeer en daarna weer naar voren haalt neemt tie nog maar 2.5 mb in beslag weet niet of dat iets met de taal heeft te maken lijkt mij niet draaien ophetzelfde spul
Verwijderd schreef op 21 september 2002 @ 18:09:
Mijn computer heeft 512mb ram, en het maakt mij eerlijk gezegd niet veel uit of het nu 15mb verbruikt, of 7mb .
je moet het niet zo zien vertienvoudig het eens dat is toch een verschil van 80 mb en dat lijkt me wel schelen

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Verwijderd schreef op 21 september 2002 @ 19:24:
je moet het niet zo zien vertienvoudig het eens dat is toch een verschil van 80 mb en dat lijkt me wel schelen
Maar de overhead van de .NET VM (of framework) zal niet lineair toenemen met de grootte van je programma denk ik.
Oftewel dat verschil zal bij een geheugenverbruik van 80mb nog steeds iets van 10mb zijn oid

Verwijderd

nee klopt maar het gaat erom op de manier dat tie het zegt maakt mij niet uit of een programma nou 15 of 7 mb in beslag neemt.
ik bedoel er alleen maar mee dat het toch met meer als de helft verdubbeld
en is de verschil van 7 naar 15 mb niet zo groot maar bij een hoeveelheid van 100 mb is het toch 110 mb meer

Verwijderd

Je moet wel nagaan dat de taskmanager niet altijd de juiste waarden geeft. In dit geval, met een enkele .NET applicatie wel, maar wanneer je het programma een tweede keer start dan zie je staan dat deze weer 8 MB geheugen vreet. Ik meende echter dat een groot gedeelte hiervan 'shared' geheugen is, wat dus inhoud dat werkelijk niet het geheugen gebruik verdubbeld, maar het maar een fractie hiervan is.
Pagina: 1