ワークプロセスはダイアログステップやバックグランド処理などが実行されるプロセスやスレッドのことであり、 J2EEにおいては、アプリケーションサーバの実行スレッドに相当します。
ワークプロセスは下記のような種類があります。
ダイアログワークプロセス
ダイアログワークプロセスは、ユーザからのリクエスト(ダイアログステップ実行依頼)を実行します。
更新ワークプロセス
更新ワークプロセスは、データベース更新依頼を実行します。更新依頼は SAP LUW の一部であり、ダイアログワークプロセスの結果として生じたデータベース操作群を 1 つのバックグラウンド処理用データベース LUW にまとめたものです。
バックグラウンドワークプロセス
バックグラウンドワークプロセスはユーザインタラクションなしで実行できるプログラム (バックグラウンドジョブ) を処理します
エンキューワークプロセス
エンキューワークプロセスは共有メモリ領域内のロックテーブルを管理します。エンキューワークプロセスを含む ABAP アプリケーションサーバも 1 つのみ使用することができます。
スプールワークプロセス
スプールワークプロセスは、要求された内容を順次にプリンタなどの出力設備に出力します。スプールワークプロセスはアプリケーションサーバ毎に一つのみ存在します。
アプリケーションサーバは、起動する際に、ワークプロセスを必要な数量分全て作成しておきます。何かの処理が実行する必要になるときに、ディスパッチャにより、空いているワークプロセスの中から一つを割り当てられます。処理が終わったら該当ワークプロセスがまた空き状態に戻り、次の割り当てを待ちます。