完全なスプレッドシートのコンテンツをデータテーブルに読み込んでいます
次に、Table.Rows クエリ リモート データベース (Oracle) を反復処理し、ADS アカウントの作成/更新/削除を行います。
次に、Excel の行を結果 (ステータス) で更新します。
ほとんどの場合はスムーズに進みますが、断続的に次の例外が発生します。
ContextSwitchDeadlock が検出されました
メッセージ: CLR は、COM コンテキスト 0x2119a8 から COM コンテキスト 0x211b18 に 60 秒間遷移できませんでした。宛先コンテキスト/アパートメントを所有するスレッドは、非ポンピング待機を行っているか、Windows メッセージをポンピングせずに非常に長時間実行されている操作を処理している可能性があります。この状況は通常、パフォーマンスに悪影響を及ぼし、アプリケーションが応答しなくなったり、メモリ使用量が時間の経過とともに継続的に蓄積したりする可能性さえあります。この問題を回避するには、すべてのシングル スレッド アパートメント (STA) スレッドでポンピング待機プリミティブ (CoWaitForMultipleHandles など) を使用し、実行時間の長い操作中に定期的にメッセージをポンピングする必要があります。
何が原因でしょうか?