Symfoware Server アプリケーション開発ガイド(埋込みSQL編) - FUJITSU - |
目次 索引 |
第2章 アプリケーションの設計 |
ここでは、UNIX系システムにおけるデータベースを処理するアプリケーションで、fork関数、exec関数およびsignal関数などのシステムコールを使用する場合の注意事項について説明します。
アプリケーションで、新しいプロセスの生成および実行を行う場合は、fork関数とexec関数の2つの関数を利用します。親プロセスからfork関数を用いて子プロセスを生成し、子プロセスでのプログラムの実行はexec関数を使用してください。以下に使い方を示します。
fork関数またはexec関数のどちらかだけを使用して、新しいプロセスの生成および実行を行う場合は、以下の注意事項があります。
fork関数またはexec関数は、SQL文の実行前に行う必要があります。SQL文を実行した後にfork関数またはexec関数を使用すると、アプリケーションは正しく動作しません。
マルチスレッド環境において、fork関数またはexec関数は、はじめてのセション(セションID)を作成する前に行う必要があります。
アプリケーションでsignal関数を使用している、いないにかかわらず、SQL文実行中は以下のシグナルは割込みの対象とはなりません。
SIGHUP
SIGQUIT
SIGTSTP
SIGTTIN
SIGTTOU
アプリケーションの中のSQL文以外の部分を実行しているときは、割込み対象シグナルはアプリケーション中でのsignal関数の指定に従います。
アプリケーションでシグナル“SIGINT”を利用しないようにすることができます。シグナルを利用しないようにするには、動作環境ファイルの実行パラメタ“SIGNAL_INF=NO”を設定します。
目次 索引 |