当 kivy 应用程序被杀死时关闭数据库连接

Posted

技术标签:

【中文标题】当 kivy 应用程序被杀死时关闭数据库连接【英文标题】:Close the database connection when kivy app gets killed 【发布时间】:2021-01-02 20:17:22 【问题描述】:

我创建了一个小型 kivy 应用程序。在这里,我使用了mysql数据库。当 kivy 应用程序被杀死或破坏时,我想关闭数据库连接。我如何知道我的 kivy 应用程序是在后台运行还是被破坏。

【问题讨论】:

考虑使用App的on_stop事件。 【参考方案1】:

要关闭数据库连接,您可以将等待超时参数设置为最小值,默认为 8 小时。所以如果数据库有任何空闲连接,同样会被 MySQL 服务器本身杀死。

假设我们将 wait_timeout 设置为 60 秒。然后空闲连接将仅活动 60 秒。 60 秒后,连接将被释放。要更改所需的变量,请使用以下步骤:

mysql -uUSER -pPASSWORD

然后

设置全局变量wait_timeout=60;

或者您也可以仅使用会话变量为您的 kivy 应用设置此变量

【讨论】:

以上是关于当 kivy 应用程序被杀死时关闭数据库连接的主要内容,如果未能解决你的问题,请参考以下文章

当应用程序被杀死/关闭时,世博会通知不会触发方法

如何在应用程序被任务管理器杀死时保存数据?

当客户端被物理杀死时,总是无法从服务器端关闭通道(netty)

当应用程序被杀死时反应原生背景地理定位

保存 Kivy 应用程序的登录屏幕用户名和密码

应用程序被杀死/关闭/未打开时的 IOS 推送通知操作