场景:处理完业务需要导出数据库 *.db文件。直接导出会如标题那样提示。
查找方案:搜索后大部分都是,关闭连接后,清空连接池子。代码如下,
conn.Close();
System.Data.sqlite.sqliteConnection.ClearallPools();
测试:使用后发现仍不行,遂继续查找。发现有进一步的代码,添加后亲测有效
回收资源:GC.Collect();
等待资源回收完成:GC.WaitForPendingFinalizers();
后记:歪果仁搞的这个东西我们还是得理解底层,这是初步干活的工具。
换个角度,如果架构是我们设计的,代码可以写成:
清空文件占用();
等待清空完成();
用我们汉语的思维完成,程序业务逻辑,相信科研水平会突飞猛进,后辈仍需努力啊!