dc_rpc_mainloop
名称
SPPのサービス開始
形式
ANSI C ,C++の形式
#include <dcrpc.h>
int dc_rpc_mainloop(DCLONG flags)
K&R版 C の形式
#include <dcrpc.h>
int dc_rpc_mainloop(flags)
DCLONG flags;
機能
このプロセスで実行中のSPPにあるサービス関数へのサービス要求を受け付けます。dc_rpc_mainloop関数は,メイン関数で呼び出します。プロセスで1回だけ呼び出してください。
dc_rpc_mainloop関数は,OpenTP1からの終了要求を受けるまでリターンしません。OpenTP1からの終了要求を受けるとは次のような場合です。
UAPで値を設定する引数
●flags
DCNOFLAGSを設定します。
リターン値
リターン値 | リターン値(数値) | 意味 |
---|---|---|
DC_OK | 0 | OpenTP1からの終了要求を受けました。SPPはすぐに終了処理をして,dc_rpc_close関数を呼び出してexit()してください。 |
DCRPCER_INVALID_ARGS | -301 | 引数が間違っています。 |
DCRPCER_PROTO | -302 | dc_rpc_open関数を呼び出していません。 |
dc_rpc_mainloop関数か,dc_mcf_mainloop関数はすでに呼び出しています。 | ||
DCRPCER_FATAL | -303 | SPPのサービスを開始できませんでした。 |
注意事項
dc_rpc_mainloop関数は,OpenTP1からの終了要求を受けるとリターンします。ただし,次のような場合はdc_rpc_mainloop関数がリターンしないままプロセスが終了します。
上記のような場合,dc_rpc_mainloop関数が正常に終了したあとで,終了処理をするようにSPPを作成してあっても,その処理は実行されないので注意してください。