DataReader.Read()上的第一次调用延迟

时间:2013-08-28 12:26:11

标签: c# performance database-connection odp.net

我与oracle数据库建立了ODP连接。

var reader = command.ExecuteReader();
whild (reader.Read())
{
    //...
}

在某些情况下,第一次拨打reader.Read()的时间比平时多(3到10个分段)。

接下来的电话没问题。不仅下一次调用还可以,而且大部分时间关闭应用程序并重新运行它也是可以的!

哪些参数会影响reader.Read()比平常更多的时间?

UPDATE1: 为了澄清这种情况,请考虑以下情况:

  1. 应用程序运行。
  2. 在申请期间执行了大量查询。
  3. 用户决定针对某些表格运行包含特定查询的报告
  4. 在正常时间调用ExecureReader。
  5. 现在是时候通过阅读器阅读了。但这需要不寻常的时间。
  6. 用户再次运行应用程序。
  7. 它不会再发生。
  8. 我猜这是关于数据库的一些缓存机制。但如果是数据库缓存,那么ExecuteReader()应具有变体执行时间。

0 个答案:

没有答案