HELPLIB.HLB  —  System Services, $SETIMR
    Sets the timer to expire at a specified time.

    On Alpha and Integrity server systems, this service accepts 64-
    bit addresses.

    Format

      SYS$SETIMR  [efn] ,daytim ,[astadr] ,[reqidt] ,[flags]

    C Prototype

      int sys$setimr  (unsigned int efn, struct _generic_64 *daytim,

                      void (*astadr)(__unknown_params), unsigned

                      __int64 reqidt, unsigned int flags);

1  –  Arguments

 efn

    OpenVMS usage:ef_number
    type:         longword (unsigned)
    access:       read only
    mechanism:    by value
    Event flag to be set when the timer expires. The efn argument
    is a longword value containing the number of the event flag;
    however, $SETIMR uses only the low-order byte.

    If you do not specify efn, event flag 0 is used.

    When $SETIMR first executes, it clears the specified event flag
    or event flag 0.

 daytim

    OpenVMS usage:date_time
    type:         quadword
    access:       read only
    mechanism:    by 64-bit reference (Alpha and Integrity servers)
    Time at which the timer expires. The daytim argument is the 64-
    bit address (on Alpha and Integrity server systems) of a quadword
    time value. A positive time value specifies an absolute time
    at which the timer expires; a negative time value specifies an
    offset (delta time) from the current time.

 astadr

    OpenVMS usage:ast_procedure
    type:         procedure value
    access:       call without stack unwinding
    mechanism:    by 64-bit reference (Alpha and Integrity servers)
    AST service routine that is to execute when the timer expires.
    The astadr argument is the 64-bit address (on Alpha and Integrity
    server systems) of the procedure value of this routine. If you do
    not specify the value of astadr or specify it as 0 (the default),
    no AST routine executes.

    The AST routine, if specified, executes at the access mode of the
    caller.

 reqidt

    OpenVMS usage:user_arg
    type:         longword (unsigned)
    access:       read only
    mechanism:    by value
    Identification of the timer request. The reqidt argument is a
    longword value containing a number that uniquely identifies the
    timer request. If you do not specify reqidt, the value 0 is used.

    To cancel a timer request, the identification of the timer
    request (as specified by reqidt in $SETIMR) is passed to the
    Cancel Timer ($CANTIM) service (as the reqidt argument).

    If you want to cancel specific timer requests but not all timer
    requests, be sure to specify a nonzero value for reqidt in the
    $SETIMR call; $CANTIM interprets an identification value of 0 as
    a request to cancel all timer requests.

    You can specify unique values for reqidt for each timer request
    or give the same value to related timer requests. This permits
    selective canceling of a single timer request, a group of related
    timer requests, or all timer requests.

    If you specify the astadr argument in the $SETIMR call, the value
    specified by the reqidt argument is passed as a parameter to the
    AST routine. If the AST routine requires more than one parameter,
    specify an address for the value of reqidt; the AST routine
    can then interpret that address as the beginning of a list of
    parameters.

 flags

    OpenVMS usage:mask_longword
    type:         longword (unsigned)
    access:       read only
    mechanism:    by value
    Longword of bit flags for the set timer operation. Currently,
    only bit 0 is used for the flags argument. When the low bit (bit
    0) is set, it indicates that this timer request should be in
    units of CPU time, rather than elapsed time. When bit 0 is clear
    (the default), the timer request is in units of elapsed time. The
    flags argument is optional.
Close Help