The Insert Entry at Head of Queue routine inserts a queue entry at the head of the specified self-relative longword interlocked queue. LIB$INSQHI makes the INSQHI instruction available as a callable routine. Format LIB$INSQHI entry ,header [,retry-count]
1 – Returns
OpenVMS usage:cond_value type: longword (unsigned) access: write only mechanism: by value
2 – Arguments
entry OpenVMS usage:unspecified type: unspecified access: modify mechanism: by reference, array reference Entry to be inserted by LIB$INSQHI. The entry argument contains the address of this signed quadword-aligned array that must be at least 8 bytes long. Bytes following the first 8 bytes can be used for any purpose by the calling program. For Alpha and I64 systems, the entry argument must contain a 32- bit sign-extended address. An illegal operand exception occurs for any other form of address. header OpenVMS usage:quadword_signed type: quadword integer (signed) access: modify mechanism: by reference Queue header specifying the queue into which entry is to be inserted. The header argument contains the address of this signed aligned quadword integer. The header argument must be initialized to zero before first use of the queue; zero means an empty queue. For Alpha systems, the header argument must contain a 32-bit sign-extended address. An illegal operand exception occurs for any other form of address. retry-count OpenVMS usage:longword_unsigned type: longword (unsigned) access: read only mechanism: by reference The number of times the insertion is to be retried in case of secondary-interlock failure of the queue instruction in a processor-shared memory application. The retry-count argument is the address of an unsigned longword that contains the retry count value. A value of 1 causes no retries. The default value is 10.