我在软件中使用HyperSQL数据库。当我启动Hsqlserver时,它工作得非常好。但是,在关闭它之后,它仍然保持.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();
}发布于 2014-10-17 12:46:49
在停止服务器之前尝试执行关闭语句。
https://stackoverflow.com/questions/26424939
复制相似问题