Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用SQLite事务I/O错误_C#_Wcf_Sqlite_Ioerror - Fatal编程技术网

C# 使用SQLite事务I/O错误

C# 使用SQLite事务I/O错误,c#,wcf,sqlite,ioerror,C#,Wcf,Sqlite,Ioerror,我目前有一个客户机/服务器设置,客户机将数据发送到服务器,然后服务器将数据保存到SQLite数据库文件中。要做到这一点,我使用的是在Windows7中运行大约30个客户端(每个客户端在5-30秒之间发送数据)时运行良好的事务 在Windows XP中使用相同的软件时,我可以多次获取/设置数据,而不会出现任何问题,直到我运行了大约20个客户端,我才开始获得Windows延迟写入失败的错误: 这会在服务器上引发异常: 我假设这要么与XP有关,要么与我运行XP的机器上的硬件问题有关 有人有什么建议

我目前有一个客户机/服务器设置,客户机将数据发送到服务器,然后服务器将数据保存到SQLite数据库文件中。要做到这一点,我使用的是在Windows7中运行大约30个客户端(每个客户端在5-30秒之间发送数据)时运行良好的事务

在Windows XP中使用相同的软件时,我可以多次获取/设置数据,而不会出现任何问题,直到我运行了大约20个客户端,我才开始获得Windows延迟写入失败的错误:

这会在服务器上引发异常:

我假设这要么与XP有关,要么与我运行XP的机器上的硬件问题有关


有人有什么建议来避免这种情况吗?或者我是否应该捕获异常并重试保存数据?

我很抱歉提到这一点,但SQLite本身处于高并发环境中。如果您有多达20个客户端的事务持续5-30秒,您肯定会发现超时(在SQLite中默认为5秒),因为SQLite基本上是fopen的替代品。

很抱歉回答我自己的问题,但这是一个硬件问题!以防万一有人过来

这有用吗?抱歉,不,我没有权限在运行此操作所需的计算机上更改它。我将在一个有XP的虚拟机上测试我的代码,看看它是XP还是硬件。谢谢你的回答,但这是我正在进行的一个有特定需求的项目的一部分。我在一开始就提到了这一点,但是规范规定我们必须使用不需要安装的db。此外,事务不会持续5-30秒,每个客户端每5-30秒发送一次数据。事务处理通常非常快,但硬件(我认为)在特定的机器上减慢了速度。…。@james.ingham:那么,再次抱歉。顺便说一下,我想知道为什么您没有在.Net开发环境中使用MS SQL Compact()我没有尝试过,但看起来您需要安装它?我没有演示机的管理员权限,所以SQLite是我必须包含的唯一dll的理想选择。@james.ingham:从技术上讲,您只需要在项目中引用相应的dll。默认情况下,它由msi安装在GAC中。