Maison > Questions et réponses > le corps du texte
RT,就酱
Java的HttpURLConnecction的getInputStream是否需要close?
这个流是否是系统维护的?
因为不是我打开的
巴扎黑2017-04-18 10:51:55
Prenez l'habitude de désactiver tous les InputStreams et OutputStreams qui ne sont plus utilisés, que l'implémentation derrière l'API les désactive automatiquement ou non pour vous.
S'il est écrit en Java 1.7+, il est très simple d'utiliser try-with-resource :
try (InputStream in = urlConnection.getInputStream()) {
...
} // 这里会自动调用 in.close();
Les scènes similaires incluent :
Les PreparedStatement, ResultSet, etc. de JDBC implémentent tous l'interface AutoCloseable. En théorie, tant que la connexion est fermée, les PreparedStatement, ResultSet, etc. générés par celle-ci seront également automatiquement fermés, mais c'est fortement le cas. Il est recommandé de générer ces ressources. Utilisez try-with-resource pour gérer.
Il en va de même pour les ressources telles que getInputStream/getOutputStream dans ServletRequest/ServletResponse.
PHP中文网2017-04-18 10:51:55
Obligatoire
Lorsque les opérations simultanées sont très élevées, si vous ne le fermez pas, la surcharge sur les ressources système sera relativement importante.