マルチスレッド化に関する考慮事項
マルチスレッド環境で実行する場合、考慮するべきスレッド・セーフティー問題が 多数あります。マルチスレッド化されたアプリケーションの作成を開始する前に、 マルチスレッド化の概念を十分に理解する必要があります。 http://www.ibm.com/systems/infocenter/ でマルチスレッド・アプリケーション に関する情報を参照してください。 また、マルチスレッド・アプリケーションのコーディング時に発生する 一般的なプログラミング・エラーを理解しておく必要があります。http://www.ibm.com/systems/infocenter/ で『一般的なマルチスレッド・プログラミング・エラー』を参照してください。データベース・ファイルを使用する際、および マルチスレッド環境でコミットメント制御を使用する際に発生する可能性がある問題に特に注意してください。
スレッド・セーフティーの 1 つの重要な問題は、静的記憶域の処理です。 ILE RPG モジュール内で静的記憶域のスレッド・セーフ処理を確実に実行するには、 2 つの方法があります。THREAD(*CONCURRENT) を指定することによって各スレッドに対して 別々の静的記憶域を設定することができます。あるいは、THREAD(*SERIALIZE) を指定することによって モジュールへのアクセスを一度に 1 つのスレッドに制限することができます。スレッド・セーフティーのこれらの 2 つの方式の比較については、マルチスレッド・アプリケーションを参照してください。
以降の説明は、これらの概念を理解していることが前提です。