Új hozzászólás Aktív témák

  • kovisoft

    őstag

    válasz arcoskönyv #3982 üzenetére

    A garbage collector nem fogja automatikusan bezárni a file-t, ha megszűnik a hivatkozás a file objektumra. Explicit le kell zárnod a file-t, ha már nem használod. Az itt említett with open a te esetetben nem járható, hiszen a függvényed visszatér és vissza kellene adnia a file objektumot, viszont a with open blokkból kilépve automatikusan záródik a file.

    A programból véglegesen kilépve az oprendszer felszabadítja a lefoglalt erőforrásokat, de erre nem lenne szabad hagyatkozni.

    Nagyobb gond lehet file-ba írásnál, ha kimarad a close, mert az írás bufferelve történik, és egyáltalán nem biztos, hogy amikor egy write-ot kiadtál, akkor ténylegesen ki is íródott az adat a file-ba, mert lehet, hogy csak a következő flush-nál vagy a close-nál fog kiíródni, és ez kimaradhat, ha nincs close és aztán mondjuk elhasal a program.

Új hozzászólás Aktív témák