EventLog.SynchronizingObject プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
EventLog エントリによって書き込まれたイベントの結果として発行されるイベント ハンドラー呼び出しをマーシャリングするために使用されるオブジェクトを取得または設定します。
public:
property System::ComponentModel::ISynchronizeInvoke ^ SynchronizingObject { System::ComponentModel::ISynchronizeInvoke ^ get(); void set(System::ComponentModel::ISynchronizeInvoke ^ value); };
[System.ComponentModel.Browsable(false)]
public System.ComponentModel.ISynchronizeInvoke SynchronizingObject { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.SynchronizingObject : System.ComponentModel.ISynchronizeInvoke with get, set
Public Property SynchronizingObject As ISynchronizeInvoke
プロパティ値
ISynchronizeInvokeイベント ログのEntryWritten イベントの結果として発行されたイベント ハンドラー呼び出しをマーシャリングするために使用されます。
- 属性
注釈
SynchronizingObjectがnullされると、EntryWritten イベントを処理するメソッドは、システム スレッド プールからスレッドで呼び出されます。 システム スレッド プールの詳細については、 ThreadPoolを参照してください。
EntryWritten イベントがボタンなどの視覚的な Windows フォーム コンポーネントによって処理されると、システム スレッド プールを介してコンポーネントにアクセスできないか、例外が発生する可能性があります。 これを回避するには、 SynchronizingObject を Windows フォーム コンポーネントに設定します。これにより、コンポーネントが作成されたのと同じスレッドで EntryWritten イベントを処理するメソッドが呼び出されます。
EventLogが Windows フォーム デザイナーの Visual Studio 2005 内で使用されている場合、SynchronizingObjectはEventLogを含むコントロールに自動的に設定されます。 たとえば、(Form から継承する) Form1 のデザイナーにEventLogを配置すると、EventLogのSynchronizingObjectプロパティは Form1 のインスタンスに設定されます。