Freepascal ja Lazarus

Dyna A Mikko

8

332

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • garpage

      ..kokeile vaan, kaikissa kielissä saa muistivuotoja aikaan ellei varaukset ja vapautukset ole hanskassa, omia tuotoksia on testattu siten että ohjelma pyörii kuukauden ilman sammutteluja, jos muistivuotoja olisi niin luulisi niiden jo ilmenneen, koska tuo alkaa jo olla wintoosan maksimi pystyssäolo aikoja, muisti vuotojen toteamiseen on myös olemassa erillisiä ohjelmia google "memory leak"

      • Automaattinen on automaattinen

        "kaikissa kielissä saa muistivuotoja aikaan ellei varaukset ja vapautukset ole hanskassa"

        Ei, et ymmärrä mitä kysyn. Automaattinen roskien keruu tarkoittaa sitä, että itse ei tarvitse käsin varata ja vapauttaa muistia omassa koodissaan. Silloin ei tule muistivuotoja, ellei aivan tarkoituksella sellaista tee. Tämä tekniikka kehitettiin jo 1950-luvulla.

        Yritän uudelleen: pakottaako Lazarus minut hoitamaan muistinhallinnan aina itse, vai voinko _tarpeen mukaan_ käyttää siihen automaattisia menetelmiä? Minkälaisia keinoja se tarjoaa muistinhallintaan, jotta voin keskittyä oleellisempien ongelmien ratkomiseen tehdessäni ohjelmiani?

        Google-haku ei antanut mitään tietoa, vaikka lisäsin siihen Lazarus-sanan. Jo ensimmäisellä sivulla oli C-kieleen liittyvä osuma.


      • jöjöjö

        voisitko antaa esimerkin Java-ohjelmasta, jossa on muistivuoto?


      • a&a
        Automaattinen on automaattinen kirjoitti:

        "kaikissa kielissä saa muistivuotoja aikaan ellei varaukset ja vapautukset ole hanskassa"

        Ei, et ymmärrä mitä kysyn. Automaattinen roskien keruu tarkoittaa sitä, että itse ei tarvitse käsin varata ja vapauttaa muistia omassa koodissaan. Silloin ei tule muistivuotoja, ellei aivan tarkoituksella sellaista tee. Tämä tekniikka kehitettiin jo 1950-luvulla.

        Yritän uudelleen: pakottaako Lazarus minut hoitamaan muistinhallinnan aina itse, vai voinko _tarpeen mukaan_ käyttää siihen automaattisia menetelmiä? Minkälaisia keinoja se tarjoaa muistinhallintaan, jotta voin keskittyä oleellisempien ongelmien ratkomiseen tehdessäni ohjelmiani?

        Google-haku ei antanut mitään tietoa, vaikka lisäsin siihen Lazarus-sanan. Jo ensimmäisellä sivulla oli C-kieleen liittyvä osuma.

        Kaikki riippuu vähän millaisia menetelmiä käytät. On tyypillistä että pascalissa joutuu käyttämään vähemmän pointtereita kuin esim. C:ssä.

        Google haussa kannattaa käyttää myös Lazaruksen tilalla Delphi tai Pascal hakusanaa.

        Kannatanee tehdä alkuun joku testiohjelma.


    • ......................

      Ei ole.

      Ohjelmoi kauniisti, älä rumasti. Älä odota että joku tulee siivoamaan paskasi vaan siivoa itse oma työtilasi.

      Ja tottakai GC:n saa koodattua periaatteessa mihin tahansa kieleen, Pascaliinkin. Eihän se vaadi muuta kuin objectpoolin ja referenssien hallinnan pakottamista ja sitten kaikkien omien luokkien pakottamista tähän GC frameworkkiin. Tosin tietenkin sitä pystyy edelleen ampumaan itseään jalkaan jos ei käytäkään sitä frameworkiä vaan sooloilee sen ulkopuolella osassa koodia.

      • On muuten...

        .... Jumala. Tai yksi kovasta nelikosta.

        Patternseista löytyy tapa toteuttaa se GC jos sitä kaipaa. Boehm oli yksi kirjoittaja.


      • Vastaus sulta

        "Ohjelmoi kauniisti, älä rumasti. Älä odota että joku tulee siivoamaan paskasi vaan siivoa itse oma työtilasi."

        Kyse ei ole siitä osaanko, vaan haluanko.

        "Ja tottakai GC:n saa koodattua periaatteessa mihin tahansa kieleen, Pascaliinkin."

        Joissakin se on valmiina. Ratkesi jo kieliongelma tässä näin.


    • xxxxx

      Ainakin basiceissa tuo roskien poisto on ollut dynaamisissa merkkijonoissa aina.

      Sivulla http://www.allapi.net/vbtutor/iapi5.shtml
      on kerrottu miten saadaan nähtyä muistin määrä. Tee lyhyt testiohjelma ja tulosta muistin määrä ennen toimintoa ja sen jälkeen.

      Luulen kuitenkin että muistin vapautus tapahtuu sovelluksen sisällä eli muistia ei vapauteta windowsille. Tosin koska Windows hoitaa muistinkäsittelyn niin se on varmaan siitä riippuvainen.

      Tämä nyt meni vähän ohi kysymyksesi eikä oikein vastannut mihinkään (:

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Ja taas ammuttu kokkolassa

      Kokkolaisilta pitäisi kerätä pois kaikki ampumaset, keittiöveitset ja kaikki mikä vähänkään paukku ja on terävä.
      Kokkola
      72
      6348
    2. Mitä siellä ABC on tapahtunut

      Tavallista isompi operaatio näkyy olevan kyseessä.
      Alajärvi
      138
      5772
    3. Helena Koivu on äiti

      Mitä hyötyä on Mikko Koivulla kohdella LASTENSA äitiä huonosti . Vie lapset tutuista ympyröistä pois . Lasten kodista.
      Kotimaiset julkkisjuorut
      486
      3654
    4. Ovatko naiset lopettaneet sen vähäisenkin vaivannäön Tinderissa?

      Meinaan vaan profiileja selatessa nykyään valtaosalla ei ole minkäänlaista kirjoitettua tekstiä siellä. Juuri ja juuri s
      Nettideittailu
      120
      2059
    5. Kuvaile elämäsi naista

      Millainen hän on? Mikä tekee hänestä sinulle erityisen?
      Ikävä
      39
      1361
    6. Suomi vietiin Natoon väärin perustein. Viides artikla on hölynpölyä. Yksin jäämme.

      Kuka vielä uskoo, että viides artikla takaa Suomelle avun, jos Suomeen hyökätään. Liikuttavasti täällä on uskottu ja ved
      Maailman menoa
      402
      1345
    7. Et ilmeisesti aio enää ikinä olla tekemisissä

      Että näinkö se menee
      Ikävä
      73
      1173
    8. Sydämeni on sinun luona

      Koko ajan. Oli ympärilläni ketä oli niin sinä olet vain ajatuksissa ja tunteissa. En halua muiden kosketusta kuin sinun
      Ikävä
      47
      1034
    9. Trump ja Venäjä

      Huomasitteko muuten... Käytännössä ainoat valtiot, joille Trump EI eilen asettanut typeriä tariffejaan, olivat Venäjä ja
      Maailman menoa
      110
      952
    10. Jatkuva stressitila

      On sinun vuoksesi kun en tiedä missä mennään mutta tunteeni tiedän ainoastaan
      Ikävä
      56
      950
    Aihe