簡體   English   中英

System.Data.SQLite for .NET中的Serealized模式

[英]Serealized mode in System.Data.SQLite for .NET

我正在使用一個使用SQLite的.NET應用程序。 根據SQLite 文檔 ,它支持多線程,可以使用以下3種模式之一

  1. 單線程。 在此模式下,所有互斥鎖都被禁用,並且SQLite一次不能在多個線程中使用。
  2. 多線程。 在這種模式下,只要在兩個或多個線程中不同時使用單個數據庫連接,SQLite就可以被多個線程安全地使用。
  3. 序列化。 在序列化模式下,SQLite可以被多個線程安全地使用而沒有任何限制。

根據這些模式,我試圖使用Serialized,我在多個任務之間共享單個連接。 但我得到的錯誤是“ 由於對象的當前狀態,操作無效 ”。

我想這是因為跨任務共享單個連接。 但是根據Serialized模式,我應該能夠在不進行任何顯式鎖定或互斥實現的情況下共享連接。 任何人都可以指導我如何在.net應用程序中使用序列化模式嗎? 是否需要以某種方式提及連接字符串?

提前致謝 !

Serialized是默認模式。 不要再次關閉打開的連接而是在每個地方使用相同的單個連接而不需要關閉它。 SQLite將負責休息。 希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM