Mikä niissä omissa ohjelmissa vie muistia. Jos vaikka muutaman tunnin näprään VB:llä (ajan ohjelman monta kertaa), niin tulee virhe Out of memory... Mitä se jättää muistiin?
Toinen kysymys: Mistä tietää kuinka paljon ohjelma tarvitsee muistia, että sen voi ajaa (laitteistovaatimukset ;)?
jcd3nton kirjoitti:
Toinen kysymys: Mistä tietää kuinka paljon ohjelma tarvitsee muistia, että sen voi ajaa (laitteistovaatimukset ;)?
Tuo selviää tietääkseni Fre-funktiolla. Jotenkin Fre(-1) tai vastaavaa. Eri argumentit käsittelevät kai osa pinomuistia tjsp.
hunajavohveli kirjoitti:
Tuo selviää tietääkseni Fre-funktiolla.
Ei ole moista funktiota VB:ssä.
Blaze kirjoitti:
hunajavohveli kirjoitti:
Tuo selviää tietääkseni Fre-funktiolla.
Ei ole moista funktiota VB:ssä.
Jaa, QB:ssä ainakin oli, mutta kun tarkemmin ajattelee niin onhan se aika loogista, ettei sitä ole VB:ssä, kun on eri käyttöjärjestelmä.
XP:ssä ja 2000 windowsis ainaki näkee ku teet exen ohjelmasta ja ajat sen, sit meet tehtävien hallintaan missä näkyy kaikki prosessit niin siinä on muistin käyttö kaikille ohjelmille.
Oisko mahdollisesti jäänyt joitain lomakkeita tai taulukoita muistiin. Lopeta ohjelma End-käskyyn, niin silloin ainakin kaikki lomakkeet, taulukot ja tiedostot vapautuu tai sulkeutuu.
Mitäs käyttistä mahdat käyttää?
ME:llä ainakin tuntui olevan muistivuotoja ja aktiivikäytössä jouduin boottaamaan koneen viimeistään iltapäivällä muistin loppuessa.
Tein siihen aikaan koneelle eräänlaisen muistin varausta seuraavan softan pätkän, josta totesimme W2000:nen vapauttavan muistin mutta ME ei sitä tehnyt vaan jätti pagefilen roikkumaan...
XP:llä en ole ongelmaan törmännyt (vielä)...
Edit:Typoja
Käytän Windows 98 Second Editionia...
Ja End käskyllä lopetan aina (ellei lopu virheeseen).
Paljonko sulla on koneessa muistia? (ja säädä virtuaali muistin koko riittäväksi!) Yleisesti Virtuaali muisti on C:Asemassa, ja jos sieltä loppuu vapaa tila saat varmasti hitaan windowsin, ja "out of memory" -ilmoituksia.
Toinen, mikä saattaa aiheuttaa ton ilmoituksen on resurssien loppuminen.
Win98:ssa resursseja on vain tietty määrä (esim.painike ,Kuva ,yms), ja 98/VB ei osaa vapauttaa niiden viemää resurssia kunnolla. XP:ssä ei käsittääkseni ole rajattu resurssien määrää.
Tietääkö kukaan miten näitä resursseja voisi vapautella, ne kun lopahtaa vähän turhan usein. Siis jollain muulla tavalla kuin reboottaamalla :)
Windowsissa (ainakin W2000 asti) oli hanskoja varattu vain 65536 kappaletta. Näiden loppuessa käyttöjärjestelmä hyydähti.
JoreSoft, jos tarkoitat tuota swappia niin se taitaa olla säädetty loputtomaksi (Tai siis niin pitkälle kuin tilaa riittää), enkä usko että VB ohjelmani käyttää kaikki kovolla olevat 20 gt vapaata tilaa =)
Aihe on jo aika vanha, joten et voi enää vastata siihen.