IEnlistmentNotification.InDoubt メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > IEnlistmentNotification.InDoubt メソッドの意味・解説 

IEnlistmentNotification.InDoubt メソッド

メモ : このメソッドは、.NET Framework version 2.0 で新しく追加されたものです。

トランザクションのステータスが未決定であることを参加オブジェクトに通知します。

名前空間: System.Transactions
アセンブリ: System.Transactions (system.transactions.dll 内)
構文構文

Sub InDoubt ( _
    enlistment As Enlistment _
)
Dim instance As IEnlistmentNotification
Dim enlistment As Enlistment

instance.InDoubt(enlistment)
void InDoubt (
    Enlistment enlistment
)
void InDoubt (
    Enlistment^ enlistment
)
void InDoubt (
    Enlistment enlistment
)
function InDoubt (
    enlistment : Enlistment
)

パラメータ

enlistment

トランザクション マネージャに対して応答を送信するために使用する Enlistment オブジェクト。

解説解説

このメソッドは、トランザクション マネージャが単一の永続的なリソースに対して単一フェーズ コミット操作を呼び出し、トランザクションの結果を取得する前に永続的なリソースへの接続が失われた場合に、揮発性のリソースに対して呼び出されます。この時点では、トランザクションの結果は安全には確認できません。

InDoubt はトランザクションの最終的な状態であると見なされるため、InDoubt を呼び出した後で Commit や Rollback を呼び出すことはできません。

メモメモ

揮発性のリソースにこのメソッドを実装する場合は、影響を受けるデータについて確認されているすべての復元操作またはコンテインメント操作を実行する必要があります。また作業が完了したら、enlistment パラメータで Done メソッドを呼び出す必要もあります。

リソース マネージャが永続的に参加しても、Done メソッドを呼び出して応答しないと、トランザクション マネージャにはリソース マネージャが InDoubt 呼び出しを受け取ったかどうかが認識できません。このため、トランザクション マネージャは応答を待ち続け、このトランザクションに関する情報を保持します。Done が呼び出されない場合、この情報はメモリまたはシステム全体のリソース内にいつまでも保持されます。この結果、リソースを再要求できなくなります。分散トランザクションの場合、これによって MSDTC ログがいっぱいになってしまい、MSDTC プロセスが中断されることがあります。System.Transactions によって管理されるトランザクションの場合、リソース マネージャのプロセスによるメモリ使用量が徐々に増加し続けます。このような理由から、リソース マネージャで準備作業が終了したら Done メソッドを呼び出すことが重要です。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「IEnlistmentNotification.InDoubt メソッド」の関連用語

IEnlistmentNotification.InDoubt メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



IEnlistmentNotification.InDoubt メソッドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS