Linq to SQL に混乱があります。データ コンテキスト クラスが次の例外を何度か与える実際の理由を探しています。
「このコマンドに関連付けられたオープン データ リーダーが既に存在します。これを最初に閉じる必要があります。
特にマルチタスク環境では、ほとんどの人が、データ コンテキストがスレッド セーフではないという理由であると言っています。
ベストアンサーは以下のスレッドを参照してください
複数のスレッドにわたる Linq-to-SQL データ コンテキスト
しかし、私の場合、シングルトンパターンで実装されている別のクラス呼び出し「A」を使用しています。このクラスの目的は、シングルトン方式でデータコンテキストオブジェクトを提供することです。このクラス「A」のインスタンスを派生のグローバルインスタンスとして維持していますクラスを作成し、特定のインスタンスを使用して Datacontex を呼び出します。
私の質問は、
メソッド呼び出しにより、制御不能なメモリの増加が発生しますか? 私の理解に基づいて、シングルトンは1つのインスタンスを静的オブジェクトとして維持します。私の仮定が間違っている場合は、適切な説明をお願いします。
ノート:
いずれにしても、私のメソッド呼び出しでも同じ例外がスローされます。したがって、このシナリオでも同じ問題が発生すると確信しています。