次の方法で共有


EventLog.SynchronizingObject プロパティ

定義

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 イベントの結果として発行されたイベント ハンドラー呼び出しをマーシャリングするために使用されます。

属性

注釈

SynchronizingObjectnullされると、EntryWritten イベントを処理するメソッドは、システム スレッド プールからスレッドで呼び出されます。 システム スレッド プールの詳細については、 ThreadPoolを参照してください。

EntryWritten イベントがボタンなどの視覚的な Windows フォーム コンポーネントによって処理されると、システム スレッド プールを介してコンポーネントにアクセスできないか、例外が発生する可能性があります。 これを回避するには、 SynchronizingObject を Windows フォーム コンポーネントに設定します。これにより、コンポーネントが作成されたのと同じスレッドで EntryWritten イベントを処理するメソッドが呼び出されます。

EventLogが Windows フォーム デザイナーの Visual Studio 2005 内で使用されている場合、SynchronizingObjectEventLogを含むコントロールに自動的に設定されます。 たとえば、(Form から継承する) Form1 のデザイナーにEventLogを配置すると、EventLogSynchronizingObjectプロパティは Form1 のインスタンスに設定されます。

適用対象

こちらもご覧ください