如果我们有如下代码:
Process p = null;
BufferedReader br = null;
try{
p = Runtime.getRuntime().exec("ps -ef");
br = new BufferedReader(new InputStreamReader(p.getInputStream()));
//Do something with br
} catch (Exception e) {
//Handle catch block
} finally {
//Do we need to set p = null;
}
在 finally block 中是否需要 p = null 或默认关闭所有关联流?
最佳答案
不需要将进程设置为null
,但最好在finally
中显式关闭BufferedReader
堵塞。或者更好的是,如果使用 Java 7 或更高版本,请考虑使用 try
with resources自动关闭流。
关于java - 我们需要在 finally block 中将流程变量设置为 null 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18990871/