java.util.concurrent.TimeoutException:10秒后超时

时间:2016-05-19 05:16:52

标签: java android canvas garbage-collection timeoutexception

网站上有很多问题与我的问题类似。但它们都没有提供问题的确切解决方案。

我正在开发一个应用程序,它在一个活动中有大量的图像视图,我正在使用画布绘制线条。

在onDestroy方法中,我遍历xml的每个元素,如果是imageview,我将通过调用setBackgroundResource()setImageResource()方法删除其背景。并使用路径在imageview的边缘周围绘制线条,使其感觉像方形进度条。 我的代码每秒最多调用20次这个类。在该代码中,我创建了最多5个新的Paths对象,并为每个调用绘制一条线。

在几个不同配置的设备中测试应用程序。它运行良好,没有任何崩溃。但崩溃分析报告的问题没有太多细节。

android.graphics.Path.finalize() 10秒后超时 android.view.ThreadedRenderer.finalize() 10秒后超时 android.os.PowerManager$WakeLock.finalize() 10秒后超时

这两个相同的崩溃在不同的对象上。 我试图在我的代码中找出问题,但它并没有帮助我,因为崩溃日志甚至互联网上都没有太多细节。 我所了解到的这个问题是垃圾收集器暂停引起的。如果申请是在后台,可能会出现此问题。 在我的应用程序中有几次调用System.gc(),我删除了所有这些,但崩溃在我的环境中不可重现,我也无法测试。

可能导致此问题的原因是什么?导致此问题的System.gc()调用或我为进度条创建的路径对象。

0 个答案:

没有答案