gpt4 book ai didi

java - HyperSQL 在停止后保持文件锁定

转载 作者:行者123 更新时间:2023-11-30 11:13:28 24 4
gpt4 key购买 nike

我在我的软件中使用了 HyperSQL 数据库。当我启动 Hsqlserver isntance 时,它​​运行良好。然而,在关闭它之后,它仍然保持锁定 .lck 和 .log 文件。当我终止我的 java 进程时,文件被解锁。关于如何在不终止我的 Java 进程的情况下关闭 HSQLServer 的任何建议?

代码开始:

hsqlServer = new Server();
hsqlServer.setLogWriter(null);
hsqlServer.setSilent(true);
hsqlServer.setDaemon(true);

hsqlServer.setDatabaseName(0, "test");
hsqlServer.setDatabasePath(0, "file:" + path);

hsqlServer.start();

// Block till database is online
while (hsqlServer.getState() != 1) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

停止代码:

hsqlServer.stop();

// Block till its stopped
try {
hsqlServer.getServerThread().join();
} catch (InterruptedException e) {
e.printStackTrace();
}

最佳答案

在停止服务器之前尝试执行 SHUTDOWN 语句

关于java - HyperSQL 在停止后保持文件锁定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26424939/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com