【发布时间】:2013-06-20 19:07:37
【问题描述】:
我在 Linq to SQL 中有些困惑。我正在寻找 Data context 类有时会给出以下异常的实际原因。
"已经有一个打开的数据读取器与该命令关联,必须先关闭
特别是在多任务环境中。大多数人说原因是,Data Context 不是线程安全的。所有人都建议使用 DataContex 作为每个工作单元。
请参考以下帖子以获得最佳答案
Linq-to-SQL Data Context across multiple threads
但在我的情况下,我正在使用另一个以单例模式实现的名为“A”的类。此类的目的是,以单例方式提供数据上下文对象。我将此类“A”的实例维护为全局派生类中的实例并使用特定实例调用 Datacontex。
我的问题是,
我的方法调用会导致不受控制的内存增长吗?根据我的理解,单例维护一个实例作为静态对象。如果我的假设是错误的,请给我很好的解释。
注意:
无论如何我的方法调用也会抛出相同的异常。所以我确信在这种情况下也会发生同样的问题。
【问题讨论】:
标签: c# multithreading linq design-patterns linq-to-sql