ClassesClassesClassesClasses | | | | Operators

clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue (Operator)

Name

clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue — Close a message queue handle and release all associated resources.

Signature

clear_message_queue( : : QueueHandle : )

Herror clear_message_queue(const Hlong QueueHandle)

Herror T_clear_message_queue(const Htuple QueueHandle)

Herror clear_message_queue(const HTuple& QueueHandle)

void ClearMessageQueue(const HTuple& QueueHandle)

void HOperatorSetX.ClearMessageQueue([in] VARIANT QueueHandle)

static void HOperatorSet.ClearMessageQueue(HTuple queueHandle)

Description

clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue closes a message queue handle QueueHandleQueueHandleQueueHandleQueueHandleQueueHandlequeueHandle that was previously opened with create_message_queuecreate_message_queueCreateMessageQueuecreate_message_queueCreateMessageQueueCreateMessageQueue. Any resources owned by the message queue, in particular message data queued in the message queue will be released.

Multiple message queue handles can be closed in a single clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue call, passing them as a tuple to the QueueHandleQueueHandleQueueHandleQueueHandleQueueHandlequeueHandle parameter.

Attention

The handle(s) must not be used again after being invalidated using clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue. Using an invalid handle results in undefined behavior. Operator clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue must not be called while the handle is used concurrently from other threads, because this would result in undefined behavior.

Parallelization

Parameters

QueueHandleQueueHandleQueueHandleQueueHandleQueueHandlequeueHandle (input_control)  message_queue(-array) HMessageQueue, HTupleHTupleHMessageQueue, HTupleHMessageQueueX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Message queue handle(s) to be closed.

Number of elements: QueueHandle >= 1

Restriction: QueueHandle != 0

Example (HDevelop)

create_message_queue (ProducerQueue)
create_message_queue (ResultQueue)
* ...
clear_message_queue ([ProducerQueue,ResultQueue])

Result

If the message queue handle(s) passed to the operator are valid, clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue returns 2 (H_MSG_TRUE). Otherwise an exception is raised. If a tuple of handles is passed and some of them are invalid, clear_message_queueclear_message_queueClearMessageQueueclear_message_queueClearMessageQueueClearMessageQueue attempts to clear as many handles from the tuple as possible before reporting the error.

Possible Predecessors

create_message_queuecreate_message_queueCreateMessageQueuecreate_message_queueCreateMessageQueueCreateMessageQueue, set_message_queue_paramset_message_queue_paramSetMessageQueueParamset_message_queue_paramSetMessageQueueParamSetMessageQueueParam

See also

create_message_queuecreate_message_queueCreateMessageQueuecreate_message_queueCreateMessageQueueCreateMessageQueue, enqueue_messageenqueue_messageEnqueueMessageenqueue_messageEnqueueMessageEnqueueMessage, dequeue_messagedequeue_messageDequeueMessagedequeue_messageDequeueMessageDequeueMessage, set_message_queue_paramset_message_queue_paramSetMessageQueueParamset_message_queue_paramSetMessageQueueParamSetMessageQueueParam, get_message_queue_paramget_message_queue_paramGetMessageQueueParamget_message_queue_paramGetMessageQueueParamGetMessageQueueParam, create_messagecreate_messageCreateMessagecreate_messageCreateMessageCreateMessage, clear_messageclear_messageClearMessageclear_messageClearMessageClearMessage, set_message_tupleset_message_tupleSetMessageTupleset_message_tupleSetMessageTupleSetMessageTuple, get_message_tupleget_message_tupleGetMessageTupleget_message_tupleGetMessageTupleGetMessageTuple, set_message_objset_message_objSetMessageObjset_message_objSetMessageObjSetMessageObj, get_message_objget_message_objGetMessageObjget_message_objGetMessageObjGetMessageObj

Module

Foundation


ClassesClassesClassesClasses | | | | Operators