ClassesClasses | | Operators

create_eventcreate_eventCreateEventCreateEvent (Operator)

Name

create_eventcreate_eventCreateEventCreateEvent — Create an event synchronization object.

Signature

create_event( : : AttribName, AttribValue : EventHandle)

Herror create_event(const char* AttribName, const char* AttribValue, Hlong* EventHandle)

Herror T_create_event(const Htuple AttribName, const Htuple AttribValue, Htuple* EventHandle)

void CreateEvent(const HTuple& AttribName, const HTuple& AttribValue, HTuple* EventHandle)

void HEvent::HEvent(const HTuple& AttribName, const HTuple& AttribValue)

void HEvent::HEvent(const HString& AttribName, const HString& AttribValue)

void HEvent::HEvent(const char* AttribName, const char* AttribValue)

void HEvent::CreateEvent(const HTuple& AttribName, const HTuple& AttribValue)

void HEvent::CreateEvent(const HString& AttribName, const HString& AttribValue)

void HEvent::CreateEvent(const char* AttribName, const char* AttribValue)

static void HOperatorSet.CreateEvent(HTuple attribName, HTuple attribValue, out HTuple eventHandle)

public HEvent(HTuple attribName, HTuple attribValue)

public HEvent(string attribName, string attribValue)

void HEvent.CreateEvent(HTuple attribName, HTuple attribValue)

void HEvent.CreateEvent(string attribName, string attribValue)

Description

An event is a prelocked mutual exclusion that does not belong to a thread, i.e., it can be signaled by a thread different from the locking thread. This understanding is, e.g., close to the definition of an event in WIN32-API or a semaphore with count 0 in POSIX threads.

create_eventcreate_eventCreateEventCreateEventCreateEvent allocates and initializes the event object according to the attributes specified in AttribNameAttribNameAttribNameAttribNameattribName and AttribValueAttribValueAttribValueAttribValueattribValue. AttribNameAttribNameAttribNameAttribNameattribName specifies the attribute class and AttribValueAttribValueAttribValueAttribValueattribValue the kind of the event. The description beneath lists all mutex kinds supported by following classes:

''""""""""

empty string sets the default attributes.

'type'"type""type""type""type"

specifies what happens if a thread waits on a signal to an event:

'sleep'"sleep""sleep""sleep""sleep"

simply suspends the calling thread (default).

'spin'"spin""spin""spin""spin"

a fast event implementation that waits busy on a signal. This type is non recursive.

Execution Information

Parameters

AttribNameAttribNameAttribNameAttribNameattribName (input_control)  number(-array) HTupleHTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

Mutex attribute.

Default value: []

List of values: 'type'"type""type""type""type"

AttribValueAttribValueAttribValueAttribValueattribValue (input_control)  number(-array) HTupleHTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

Mutex attribute value.

Number of elements: AttribValue == AttribName

Default value: []

List of values: 'sleep'"sleep""sleep""sleep""sleep", 'spin'"spin""spin""spin""spin"

EventHandleEventHandleEventHandleEventHandleeventHandle (output_control)  event HEvent, HTupleHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)

Event synchronization object.

Result

create_eventcreate_eventCreateEventCreateEventCreateEvent returns 2 (H_MSG_TRUE) if all parameters are correct. If necessary, an exception is raised.

Possible Successors

wait_eventwait_eventWaitEventWaitEventWaitEvent, signal_eventsignal_eventSignalEventSignalEventSignalEvent, clear_eventclear_eventClearEventClearEventClearEvent

See also

clear_eventclear_eventClearEventClearEventClearEvent

Module

Foundation


ClassesClasses | | Operators