Kirjoittaja |
Viesti |
MarkusK
| Lauantaina, 13. huhtikuuta, 2002 - klo 19.34: | | Oli tuossa vielä 5 minuuttia sitten ongelma: Ohjelmani joka avasi näytön käyttäen CUSTOMBITMAPpia sotki muistia aina ohjelmasta poistuttaessa siten, että suurin yhtenäinen vapaa chip-muistialue oli hyvin pieni. Aikani ongelmaa pähkäillessäni löysin ongelmakohdan: CloseScreen-rutiini sotki muistin näyttöä suljettaessa. Ratkaisuna ongelmaa löytyi seuraava: Ohjelmasta poistuttaessa oman bittikartan muistin vapautuksen ja CloseScreen rutiinin paikan vaihtaminen keskenään siten, että ensin suljetaan näyttö ja sitten vapautetaan omalle bittikartalle varattu muisti. Tämä on sikäli hämmentävää, että minulla on ohjelmia jotka vapauttavat ensin muistin omalta bittikartalta ja sitten sulkevat näytön -- eli juuri toisin päin kuin yllä olevassa ongelmani ratkaisussa -- ja silti toimivat. Kysymys kuuluukin: Jos käyttää CUSTOMBITMAPpiä tagia SA_BitMap omaa bittikarttaa varten, jolle varataan ohjelmassa toisaalla muistia, niin onko lopetettaessa ensin suljettava näyttö ja sitten vapautettava muisti omalta bittikartalta?
|
MarkusK
| Lauantaina, 13. huhtikuuta, 2002 - klo 19.37: | | Höh, ja-sana unohtui kiireessä tuosta viimeisen kappaleen ensimmäiseltä riviltä CUSTOMBITMAPpiä-sanan jälkeen.
|
Thematic
| Maanantaina, 15. huhtikuuta, 2002 - klo 9.24: | | Minusta tuo menee ihan yksinkertaisesti niin, ettei aleta vapauttamaan muistia joka on kaytossa, nyt jos joku muu ohjelma ehtii varata sita jne. ruutuunkin tulee roskaa.
|
MarkusK
| Maanantaina, 15. huhtikuuta, 2002 - klo 9.31: | | Niinpä tietysti, selityksesi kuulostaa loogiselta.
|
|