繁体   English   中英

DBCommand使用块

[英]DBCommand using block

我有以下代码:

using (MySqlConnection conn = new MySqlConnection(connStr))
{
    conn.Open();

    cmd = conn.CreateCommand();
    cmd.CommandText = "SELECT * FROM Events";
    cmd.CommandType = CommandType.Text;
    cmd.ExecuteNonQuery();
}

通过阅读该站点上的几篇文章,建议DbCommand应该在using块中,但是,我看不到为什么需要这样做。 连接已关闭,那么DbCommand坚持使用的是什么需要using块? 如果从IDisposable继承的类必须使用using块或手动调用Dispose确实是这种情况?

我在上面的代码上运行了一个具有100个线程的模拟器,并且在DbCommand上使用了带有using块的代码,但我发现内存使用没有真正的区别。

DbCommand是抽象的,并且不预设特定于供应商的子类将拥有哪些本机资源,以及应该以什么顺序释放它们。 using块的正确嵌套似乎是合理的隐式编码约定。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM