Trebamo li zatvoriti InputStream u Javi?
Trebamo li zatvoriti InputStream u Javi?

Video: Trebamo li zatvoriti InputStream u Javi?

Video: Trebamo li zatvoriti InputStream u Javi?
Video: Как настраивать и проводить трансляции с через видеокодер 2024, Maj
Anonim

2 odgovora. Vi treba zatvoriti the ulazni tok , jer je tok vraćen metodom koju spominjete zapravo FileInputStream ili neka druga podklasa InputStream koji drži ručku za datoteku. Ako ti uradi ne zatvori ovaj tok vas imati curenje resursa.

Imajući ovo u vidu, da li je potrebno zatvoriti InputStream u Javi?

Ali ulazni tok s nikada nije zatvoren. Ovo je samostalna Java programa i postoji nekoliko takvih programa gdje se InputStream nikada nije zatvoren. Obično će fajl biti zatvoren kada se InputStream objekat se sakuplja smeće ili kada se program završi. Obično nije dobra ideja ostaviti ovako otvorene stvari.

Takođe, zašto bismo zatvorili streamove u Javi? Važno je da zatvorite tokove , da se oslobodi deskriptor datoteke koji drži ova klasa, kao njen ograničeni resurs i koji se koristi i za povezivanje utičnice i za rukovanje datotekama. Ozbiljno curenje resursa može dovesti i do izuzetka deskriptora datoteke.

Drugo, da li trebam zatvoriti FileInputStream?

Da ti treba zatvoriti ulazni tok ako vi željeti vaši sistemski resursi su pušteni nazad. FileInputStream . zatvori () je ono što ste vi potreba . I ti treba zatvoriti (), ili završite svoj program.

Da li trebam zatvoriti ByteArrayInputStream?

4 odgovora. Ne moraš zatvori ByteArrayInputStream , u trenutku kada ga ne referencira nijedna varijabla, sakupljač smeća će osloboditi tok i neke bajtove (naravno pod pretpostavkom da nisu referencirani negdje drugdje).

Preporučuje se: