排他指定した資源を解放する方法は,次の二つの場合があります。
- 資源を確保しているUAPから排他を解除します。解除する資源名称を指定して排他を解除する場合は,dc_lck_release_byname関数【CBLDCLCK('RELNAME ')】を呼び出します。UAPで確保しているすべての資源を一度に解放する場合は,dc_lck_release_all関数【CBLDCLCK('RELALL ')】を呼び出します。排他を解除する関数は,その資源の排他を指定したUAPからだけ呼び出せます。排他を解除された資源は,OpenTP1が資源の解放待ちのUAPに割り当てます。
- 資源を確保しているUAPの同期点処理後に,そのUAPが確保していたすべての資源をOpenTP1で解放します。UAPの終了形態が正常でも異常でも,OpenTP1で自動的に解放します。