Domino サーバー上で非同期エージェントを実行する

サーバー上で複数のエージェントを処理するには:

  1. 次の行を NOTES.INI ファイルに追加します。

    DominoAsynchronizeAgents=1

  2. HTTP サーバーを再起動します。
注: マルチプロセス化することは、エージェントマネージャの数を増やすこととは違います。

スレッド保護された LSX、C/C++ コード

Notes はスレッド保護されています。マルチスレッド化されたエージェントを作成するには、LSX または C/C++ コードがスレッド保護されていることを確認する必要があります。

スレッド保護されたコードとは、次のようなコードのいずれかであることを意味します。

スレッド保護されたコードを設計するには、次のことに注意してください。

スレッド化に特有のバグ

スレッド化の問題には、通常は決定的な判別手段がありません。

一般的なスレッド化の問題には次のようなものがあります。

ロックの作成と破壊

ロックを作成するには、次のコマンドを使用します。

LockID=CreateLock( LockName as String)

このコマンドは、指定されたロックへのリンクを作成し、別のロック関数が使用するロック ID を返します。ロックが存在しないときは、ロックを作成します。

ロックを削除するには、次のコマンドを使用します。

DestroyLock ( LockID as Integer)

このコマンドは、指定されたロックに対する現在のリンクを削除し、リンクが残っていなければ、ロックを破壊します。