ロック方法
HULFTにて使用しているロック方法について説明します。
詳細は「HULFTとユーザージョブ間での排他制御について」を参照してください。
HULFT for zOS
共有モード(DISP=SHR)または占有モード(DISP=OLD)による割り当てをファイルオープン前に行います。
HULFT for IBMi
ALCOBJコマンドによるロックをファイルオープン前にかけます。
HULFT for Linux/AIX
ローカルファイルのロック方法
lockf()関数によるロックをファイルオープン後にかけます。lockf()関数にてロックをかけ、ロックを解放せずにファイルをクローズした場合、このロックは自動的に解放されます。なお、ラージファイル対応OSでは、lockf64()関数を使用しております。
集信ファイルにおいては、lockf()関数によるロック方式に加え、実ファイル名に対するHULFT独自のロックを、ファイルオープン前にかけます。このロックは、HULFT Ver.6.3.1から適用されており、HULFTの集信システム内における集信ファイルのロック方式です。このロックの場合、集信ファイルロック制御ファイル(HULPATH/.#hulrcv_file.lock)でロックを制御します。
集信ファイルにおけるユーザージョブとの排他制御に関しては、lockf()関数を使用したロック方式での連携を行ってください。実ファイル名に対するHULFT独自のロック方式は使用できません。
ネットワークファイルのロック方法
HULFTのネットワークファイルロックをかけます。さらに、lockf()関数によるロックをファイルオープン後にかけます。
ネットワークファイルは、HULFT10のEnterpriseグレードを導入している場合に使用できます。
HULFT for Windows
ローカルファイルのロック方法
ミューテックスオブジェクトによるロックをファイルオープン前にかけます。
さらに、ファイルオープン時にCreateFile()関数による共有モードの設定を行います。
ネットワークファイルのロック方法
ファイルオープン前に、ミューテックスオブジェクトによるロックをかけ、続いてHULFTのネットワークファイルロックをかけます。
さらに、ファイルオープン時にCreateFile()関数による共有モードの設定を行います。
ネットワークファイルは、HULFT10のServerグレードを導入している場合に使用できます。