加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – System.Data.SQLite for .NET中的Serealized模式

发布时间:2020-12-15 22:41:13 所属栏目:百科 来源:网络整理
导读:我正在使用一个使用SQLite的.NET应用程序.根据SQLite documentation,它支持多线程,可以使用以下3种模式之一 单线程.在此模式下,所有互斥锁都被禁用,并且SQLite一次不能在多个线程中使用. 多线程.在这种模式下,只要在两个或多个线程中不同时使用单个数据库连
我正在使用一个使用SQLite的.NET应用程序.根据SQLite documentation,它支持多线程,可以使用以下3种模式之一

>单线程.在此模式下,所有互斥锁都被禁用,并且SQLite一次不能在多个线程中使用.
>多线程.在这种模式下,只要在两个或多个线程中不同时使用单个数据库连接,SQLite就可以被多个线程安全地使用.
>序列化.在序列化模式下,SQLite可以被多个线程安全地使用而没有任何限制.

根据这些模式,我试图使用Serialized,我在多个任务之间共享单个连接.但我得到的错误是“由于对象的当前状态,操作无效”.

我想这是因为跨任务共享单个连接.但是根据Serialized模式,我应该能够在不进行任何显式锁定或互斥实现的情况下共享连接.
任何人都可以指导我如何在.net应用程序中使用序列化模式吗?是否需要以某种方式提及连接字符串?

提前致谢 !

解决方法

Serialized是默认模式.不要再次关闭打开的连接而是在每个地方使用相同的单个连接而不需要关闭它. SQLite将负责休息.希望这可以帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读