From c1085c1f652dd856fba57236a71f86e4e638274d Mon Sep 17 00:00:00 2001 From: 283375 Date: Tue, 27 Jun 2023 23:27:10 +0800 Subject: [PATCH] impr(db): close connection when program exit using `atexit` hook --- src/arcaea_offline/database.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/arcaea_offline/database.py b/src/arcaea_offline/database.py index b0ace06..929c1cf 100644 --- a/src/arcaea_offline/database.py +++ b/src/arcaea_offline/database.py @@ -1,3 +1,4 @@ +import atexit import os import sqlite3 from dataclasses import fields, is_dataclass @@ -30,6 +31,8 @@ class Database(metaclass=Singleton): self.__conn.execute("PRAGMA journal_mode = WAL;") self.__conn.execute("PRAGMA foreign_keys = ON;") + atexit.register(self.__conn.close) + self.__update_hooks = [] @property