Guy*_*Guy 15 crash performance android samsung-mobile
我们在Android 4.3 Samsung Galaxy s3上看到了以下崩溃的流
java.util.concurrent.TimeoutException: android.content.res.AssetManager$AssetInputStream.finalize() timed out after 10 seconds
at android.content.res.AssetManager$AssetInputStream.close(AssetManager.java:559)
at android.content.res.AssetManager$AssetInputStream.finalize(AssetManager.java:592)
at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:187)
at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
at java.lang.Thread.run(Thread.java:841)
Run Code Online (Sandbox Code Playgroud)
帮助任何人?
每当您使用 StreamReader/StreamWriter 类进行读/写操作时,请确保您ioStream.close()在第一个try{}块内调用。像这样的东西:
AssetManager AssetManager = mContext.getAssets();
try {
InputStream is = AssetManager.open("sample.json");
int size = is.available();
byte[] buffer = new byte[size];
is.read(buffer);
is.close();
} catch (Exception ex) {
ex.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
即使您在块try{}下有另一个块,catch/finally {}它仍然会抛出上述异常。
相反,您可以ioStream = null在catch/finally {}块中分配。
catch (Exception ex) {
// If ioStream object is outside the try block
ioStream = null;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4392 次 |
| 最近记录: |