बंद करें यदि हम जावा 8 स्ट्रीम का उपयोग करते हैं जैसे list.stream().filter(....).collect(..).....
यह स्ट्रीम कब बंद है?जावा 8 स्ट्रीम
क्या यह अच्छा अभ्यास है कि हम हमें अगले उदाहरण के रूप में स्ट्रीम बंद कर देते हैं?
Stream<String> stream = list.stream();
String result = stream.limit(10).collect(Collectors.joining(""));
stream.close();
डॉक्स से: स्ट्रीम एक BaseStream.close() विधि है और AutoCloseable लागू है, लेकिन लगभग सभी धारा उदाहरणों वास्तव में उपयोग के बाद बंद कर दिया की जरूरत नहीं है। आम तौर पर, केवल स्ट्रीम जिनके स्रोत एक आईओ चैनल है (जैसे फाइल.लाइन (पथ, वर्णसेट) द्वारा लौटाए गए लोगों को बंद करने की आवश्यकता होगी। अधिकांश धाराओं को संग्रह, सरणी या उत्पन्न कार्यों द्वारा समर्थित किया जाता है, जिसके लिए कोई विशेष संसाधन प्रबंधन की आवश्यकता नहीं होती है। (यदि किसी स्ट्रीम को बंद करने की आवश्यकता होती है, तो इसे संसाधन-संसाधन-संसाधन विवरण में संसाधन के रूप में घोषित किया जा सकता है।) – Matt
मुझे नहीं लगता कि आपको उस "स्ट्रीम" को बंद करने की आवश्यकता है ^) – injecteer
सामान्य रूप से स्ट्रीम होने की आवश्यकता नहीं है बन्द है। केवल कुछ स्ट्रीम जो 'DirectoryStream' जैसे resouces तक पहुंचने की आवश्यकता है, को बंद करने की आवश्यकता है। ऐसा करने का सबसे अच्छा तरीका एक [प्रयास के साथ संसाधन] (https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html) कथन का उपयोग कर है। – Jesper