usb待机后磁盘I / O错误

时间:2018-02-23 20:45:50

标签: c# sqlite datareader usb-drive

我的SQLite连接出现异常。

Message: disk I/O error
StackTrace: at System.Data.SQLite.SQLite3.Reset(SQLiteStatement stmt)
   at System.Data.SQLite.SQLite3.Step(SQLiteStatement stmt)
   at System.Data.SQLite.SQLiteDataReader.NextResult()
   at System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   at System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
 Source: System.Data.SQLite

这种情况会发生这种情况。

  1. 我启动了该应用程序
  2. 我点击执行功能的按钮
  3. 我什么都不做30分钟
  4. 我再次点击按钮执行功能
  5. 异常!
  6. 问题是为什么?

    数据库的usb棒在几分钟后进入待机状态?硬盘待机时间设置为电池10分钟,电源设置20分钟。 Windows设备管理员说如果Windows想要的话,usb棒可以进入节能模式。

    但为什么SQLite3.Reset函数不起作用呢?

    是否有解决办法?

    这是我用30分钟间隔执行的功能。

    if (connection.State != ConnectionState.Open)
    {
        connection.Open();
    }
    
    using (var command = new SQLiteCommand(sqlQuery, connection))
    {
        using (var reader = command.ExecuteReader())
        {
            // Do something
        }
    }
    
    if (connection.State != ConnectionState.Closed)
    {
        connection.Close();
    }
    
    return returnList;
    

0 个答案:

没有答案