一、close 顺序异常
FileInputStream inputStream = null;
try {
inputStream = new FileInputStream("tst.txt");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream, 1024);
try {
// 错误顺序,可能出现java.io.IOException:stream closed异常
inputStream.close();
bufferedInputStream.close();
// 正确顺序应该为
bufferedInputStream.close();
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
二、文件输入流和缓存流不在同一个线程
public class MyTestClass {
FileInputStream mInputStream;
public MyTestClass() {
try {
mInputStream = new FileInputStream("test.h264");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
new Thread(new Runnable() {
@Override
public void run() {