Трябва ли да затворим InputStream в Java?
Трябва ли да затворим InputStream в Java?

Видео: Трябва ли да затворим InputStream в Java?

Видео: Трябва ли да затворим InputStream в Java?
Видео: Java Tech Talk: Telegram bot on java for 1 hour 2024, Ноември
Anonim

2 отговора. Вие трябва да се затвори на входен поток , тъй като потокът, върнат от метода, който споменавате, всъщност е FileInputStream или някакъв друг подклас на InputStream който държи манипулатор за файл. Ако ти направи не близо този поток вие имат изтичане на ресурси.

Имайки предвид това, необходимо ли е да затворите InputStream в Java?

Но входен поток s никога не се затваря. Това е самостоятелно Java програми и има няколко такива програми, където InputStream никога не се затваря. Обикновено файлът ще бъде затворен, когато InputStream обектът се събира боклук или когато програмата приключи. Обикновено не е добра идея да оставяте нещата отворени по този начин.

Също така, защо трябва да затваряме потоци в Java? Важно е да затваряне на потоци , за освобождаване на файлов дескриптор, държан от този клас, като негов ограничен ресурс и използван както при свързване на сокет, така и при обработка на файлове. Сериозно изтичане на ресурси може да доведе и до изключение на файловия дескриптор.

Второ, трябва ли да затворя FileInputStream?

Да ти трябва да се затвори входния поток, ако вие искам вашите системни ресурси са освободени обратно. FileInputStream . близо () е това, което вие трябва . Вие също трябва да се затвори (), или завършете програмата си.

Трябва ли да затворя ByteArrayInputStream?

4 отговора. Не е нужно затворете ByteArrayInputStream , в момента, в който не е препратен от никоя променлива, събирачът на боклук ще освободи потока и няколко байта (разбира се, ако приемем, че не са посочени някъде другаде).

Препоръчано: