ASAP 2.7 Extension Manual

Implementing the ASAP Extension in an Application
HP NonStop ASAP Extension Manual425265-004
4-11
ASAP_REMOVE_ Procedure
The final time a process calls the remove procedure, when it removes its last domain
from the ASAP Extension, it should supply the control flag indicator to cause the ASAP
Extension to deallocate the extended memory segment for the process.
You can manually remove domains using the ASAP command interpreter MONITOR
command:
To remove domains that belong to user-defined entities, specify an entity name in
the MONITOR command.
To remove all other domains, specify APP as the entity name.
MONITOR APP, REMOVE removes all domains from all user-defined entities in the
down state.
MONITOR APP, REMOVE, FORCE removes all user-defined domains from ASAP.
For more information on the MONITOR command, see the ASAP Server Manual.
ASAP_REMOVE_ Procedure
The ASAP_REMOVE_ procedure removes a domain from the ASAP Extension
subsystem. It can be called multiple times by a process if it participates in multiple
domains.
error
INT
returns one of these values indicating the outcome of the remove call:
error := ASAP_REMOVE_( seg^offset !i
[, error^detail] !o
[, segment^id] !i
[, flags] !i
);
Value Definition
0 No error, removal was successful.
–1 The calling process is not named.
–2 Parameter missing or in error. Error^detail contains the parameter number.
–3 File-system error. Error^detail contains the file-system error number.
–4 Checksum error. Shared memory has been corrupted.
–5 Segment deallocation error. Error^detail contains the error returned from
the SEGMENT_ALLOCATE_ procedure.
–6 This domain was not found in the memory location specified by seg^offset.
–7 Memory address trap detected. The shared memory address returned from
ASAPXMON causes a memory trap.