• 大小: 2.33KB
    文件类型: .cs
    金币: 1
    下载: 0 次
    发布日期: 2020-12-26
  • 语言: C#
  • 标签: SQLite  多线程  

资源简介

SQLite多线程写入 出现锁文件的解决方案

资源截图

代码片段和文件信息

/// 
/// 用于在多线程访问sqlite时防止同步写导致锁文件
///
/// 使用方法:
/// using (SQLiteWriteLock sqliteLock = new SQLiteWriteLock(SQLite链接字符串))
/// {
///     //sqlite 写操作代码
/// }
///
/// 可以通过在配置文件appSettings节中添加设置 SQLiteWriteLockTimeout 的value值控制锁等待的超时时间,该值必须为正整数数字,单位为毫秒,
/// 默认的超时时间是1000ms
/// 

public sealed class SQLiteWriteLock : IDisposable
{
#region 静态字段和属性
const short WAIT_TIME = 5;
static readonly object locker = new object();
static Dictionary _dbThreadIdDict = new Dictionary();
/// 
/// 获得写操作的超时时间,单位为毫秒,可以通过配置文件appSettings节中添加设置 SQLiteWriteLockTimeout 的value值控制锁等待的超时时间,该值必须为正整数数字,单位为毫秒
/// 默认的超时时间是1000ms
/// 

public static int SQLiteWriteLockTimeout
    {
get
        {
string configValule = ConfigurationManager.A

评论

共有 条评论