まだ完了していない非同期プロセスを取り消します
構文
ESS_FUNC_M EssCancelProcess (
hCtx
);
パラメータ | データ型 | 説明 |
---|---|---|
hCtx |
ESS_HCTX_T |
APIコンテキスト・ハンドル。 |
備考
この関数を使用してプロセスを取り消した場合、一部のデータのみ再計算され、一貫性が失われた状態のままデータベースが残ることがあります。
非同期データベース操作(たとえば計算)が正しく開始された後以外にこの関数を呼び出すと、エラーが発生します。
戻り値
なし。
アクセス
この関数を使用するのに、特別な権限は必要ありません。
例
ESS_VOID_T ESS_CancelProcess(ESS_HCTX_T hCtx) { ESS_FUNC_M sts = ESS_STS_NOERR; ESS_STR_T Script; ESS_PROCSTATE_T pState; ESS_USHORT_T Count; Script = "CALC ALL;"; sts = EssBeginCalc (hCtx,ESS_TRUE); if (!sts) sts = EssSendString (hCtx, Script); if (!sts) sts = EssEndCalc (hCtx); /************************************* Check process state and cancel it if it takes too long *************************************/ if (!sts) { sts = EssGetProcessState (hCtx, &pState); while(!sts && (pState.State != ESS_STATE_DONE)) { Count = Count + 1; if (Count == 1000) sts = EssCancelProcess(hCtx); sts = EssGetProcessState (hCtx, &pState); } } }
関連トピック