TACL Reference Manual
Built-In Functions and Variables
HP NonStop TACL Reference Manual—429513-018
9-250
#LOCKINFO Built-In Function
Consideration
For D-series programs, use the #FILEGETLOCKINFO built-in function.
Example
This routine accepts a volume name and reports all locks for that volume.
?SECTION looklock ROUTINE
#FRAME
== Define buffer into which #LOCKINFO puts lock information.
[#DEF buffer STRUCT
 BEGIN
 STRUCT lib;
 BEGIN
 BYTE type;
 BYTE keylen;
 INT misc;
 CHAR svol^file(0:15);
 INT numlab;
 INT2 laboff; == byte offset of 1st labinfo entry
 BYTE keyval(0:255);
 INT2 recaddr REDEFINES keyval;
 == Be sure there is space for at least 1 labinfo entry.
 == More might fit if keylen < 256.
 FILLER 12;
 END; == lib
 STRUCT generic REDEFINES lib;
 BEGIN
 BYTE onechar (0:293);
 END;
 END; == buffer
] == end #DEF
== Define structure for one labinfo entry.
== One entry at a time is copied here from buffer.
[#DEF labinfo STRUCT
 BEGIN
 INT misc;
 CRTPID locker;
 TRANSID translocker REDEFINES locker;
 INT reserved;
 END; == labinfo
] == end #DEF
== Get byte length of labinfo STRUCT
#PUSH labinfolen
#SET labinfolen [#VARIABLEINFO /LEN/ labinfo]
== Define macro to show information about one locked &
 resource (a file or a record).
[#DEF display_lib MACRO |BODY|
 #OUTPUT
 == Get interesting values from buffer.
 #SET type [buffer:lib:type]










