- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的 android 应用程序中,我使用带有 sqlcipher 库的 Room 进行加密/解密。我经常在 Crashlytic 中看到以下崩溃:
java.util.concurrent.TimeoutException:net.sqlcipher.database.SQLiteCompiledSql.finalize() timed out after 10seconds at sun.misc.Unsafe.park(Native Method) atjava.util.concurrent.locks.LockSupport.park(LockSupport.java:190) atjava.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:868)atjava.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:902)atjava.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1227)atjava.util.concurrent.locks.ReentrantLock$FairSync.lock(ReentrantLock.java:231)atjava.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:294)atnet.sqlcipher.database.SQLiteDatabase.lock(SQLiteDatabase.java:567)atnet.sqlcipher.database.SQLiteCompiledSql.releaseSqlStatement(SQLiteCompiledSql.java:104)atnet.sqlcipher.database.SQLiteCompiledSql.finalize(SQLiteCompiledSql.java:146)at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:289) atjava.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:276) atjava.lang.Daemons$Daemon.run(Daemons.java:137) atjava.lang.Thread.run(Thread.java:929)
SQLiteDatabase.lock() line 567
以前它是第 566 行,但在该方法中我插入了一个检查:如果数据库未打开 -> 返回并且不继续锁定,但它没有帮助,崩溃再次出现。
最佳答案
我在 Crashlytics 中看到这个问题已经有一段时间了,似乎最终能够完全解决这个问题,我将在这里发布完整的研究。
问题
对于这样的查询:
@Query("DELETE FROM table WHERE id NOT IN (:ids)")
abstract fun deleteNotInList(ids: List<String>): Int
Room 生成的代码不清理光标和生成的语句(在下图中,比较方法一不使用光标,不调用 release() 方法,与调用 cursor.close() 方法的底部相比); 方法名称和查询在那里略有不同,因为我简化了 fragment ):
@RawQuery
abstract fun deleteNotInListRaw(query: SimpleSQLiteQuery): Int
fun deleteNotInList(
ids: List<String>
) {
deleteNotInListRaw(
SimpleSQLiteQuery(
"DELETE FROM table WHERE id NOT IN (${ids.joinToString(prefix = "'", postfix = "'", separator = "','")})"
)
)
}
在这种情况下,查询使用游标并在删除完成后关闭它,仍然锁定数据库,但不在 GC 阶段和专用线程上。
cursor.close()
或
statement.release()
关于android - TimeoutException : net. sqlcipher.database.SQLiteCompiledSql.finalize() 在 10 秒后超时(Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63336501/
我是 python 和 selenium 的新手,我正在尝试我在 youtube 上看到的一个例子。这是代码示例: from selenium import webdriver from seleni
我已经使用 kafkatemplate bean 制作了发送器类来将有效负载发送到主题在 SenderConfiguration 类中进行一些配置。 发件人类 @Component public cl
这是我的第一类 UserPage。在这里您可以看到从 BasePageObject 类调用 click 方法的方法 ClickNextPage() public class UserPage exte
这个问题在这里已经有了答案: catch exception that is thrown in different thread (5 个答案) 关闭 3 年前。 如何捕获TimeoutExcep
我正在尝试使用 Ajax 加载元素。这是我的脚本: .. WebElement account= (new WebDriverWait(driver, 15)) .until(Expected
是: Future#get (FutureTask#get) ExecutorService.html#invokeAny 仅可以抛出 java.util.concurrent.TimeoutExce
编辑:我的自定义处理程序中有一个静态初始化程序 block 。当我删除它时,它运行良好。我怀疑静态初始化程序有问题。它尝试访问一些系统属性和一些 LogManager 属性。 我正在从 Eclipse
我的问题与 WCF 不时抛出的 System.TimeoutException 有关: System.TimeoutException: The open operation did not comp
我有一个 DAO 类,它有下面的方法。我在事务管理器中称其为事务管理器。当我在没有“conn.commit()”行的情况下运行它时 - 它会抛出超时异常,但是当我用这个行运行它时 - 就可以了。有什么
这是我的 DataClientFactory 类。 public class DataClientFactory { public static IClient getInstance() {
我有两个在同一网络上运行的自托管服务。第一个是对 Excel 工作表(或其他来源,但目前这是我用来测试的来源)进行抽样,并将更新发送到订阅的客户端。第二个作为客户端连接到第一个客户端的实例,可选地评估
假设您设计了一个 System.IO.Stream 扩展 MyStream,其 Read 方法可能会超时,您希望抛出哪种异常类型: System.IO.IOException(例如 System.Ne
我是 C# 的新手,我发现异常有点令人困惑...我有一个包含以下代码的网络应用程序: try { //do something } catch (TimeoutException t) {
我正在使用分布式对象进行进程间通信。我正在运行一台服务器和四个客户端实例,但我收到 NSPortTimeoutException。我想存储客户端对象@server以供客户端之间进一步通信。 //客户端
我正在测试适用于Twitter的Spring Cloud Stream App, 使用以下与Kafka相关的环境属性启动docker容器, KAFKA_ADVERTISED_HOST_NAME= ad
我正在项目中使用 JxBrowser。我只使用本地 HTML 文件,因此使用以下方法来呈现我的 HTML 文件: public static void loadHTMLFile(Browser
我使用java telegram api与windows intellij idea中的telegram core api进行通信 https://github.com/ex3ndr/telegram
我在使用 vert.x Flamework(版本:“3.8.1”)时遇到一些问题。我在运行单元测试时遇到了 java.util.concurrent.TimeoutException 。没有什么会阻塞
根据 Javadoc,Future.get() ,抛出 TimeoutException 和 CancellationException 以及另外 2 个异常。 TimeoutException 和
我之前问过一个 question在尝试从远程计算机访问 WCF 服务时解决 SecurityNegotiationException。由于 ValtasarIII 的回答,该异常已得到解决。 现在我有
我是一名优秀的程序员,十分优秀!