create_eventT_create_eventCreateEventCreateEventcreate_event (Operator)

Name

create_eventT_create_eventCreateEventCreateEventcreate_event — Create an event synchronization object.

Signature

create_event( : : AttribName, AttribValue : 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::HEvent(const wchar_t* AttribName, const wchar_t* AttribValue)   (Windows only)

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)

void HEvent::CreateEvent(const wchar_t* AttribName, const wchar_t* AttribValue)   (Windows only)

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)

def create_event(attrib_name: MaybeSequence[Union[int, float, str]], attrib_value: MaybeSequence[Union[int, float, str]]) -> HHandle

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_eventCreateEventCreateEventCreateEventcreate_event allocates and initializes the event object according to the attributes specified in AttribNameAttribNameAttribNameAttribNameattribNameattrib_name and AttribValueAttribValueAttribValueAttribValueattribValueattrib_value. AttribNameAttribNameAttribNameAttribNameattribNameattrib_name specifies the attribute class and AttribValueAttribValueAttribValueAttribValueattribValueattrib_value 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""type"

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

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

simply suspends the calling thread (default).

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

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

Execution Information

Parameters

AttribNameAttribNameAttribNameAttribNameattribNameattrib_name (input_control)  attribute.name(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (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""type"

AttribValueAttribValueAttribValueAttribValueattribValueattrib_value (input_control)  attribute.value(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (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""sleep", 'spin'"spin""spin""spin""spin""spin"

EventHandleEventHandleEventHandleEventHandleeventHandleevent_handle (output_control)  event HEvent, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Event synchronization object.

Result

create_eventcreate_eventCreateEventCreateEventCreateEventcreate_event returns TRUE if all parameters are correct. If necessary, an exception is raised.

Possible Successors

wait_eventwait_eventWaitEventWaitEventWaitEventwait_event, signal_eventsignal_eventSignalEventSignalEventSignalEventsignal_event, clear_eventclear_eventClearEventClearEventClearEventclear_event

See also

clear_eventclear_eventClearEventClearEventClearEventclear_event

Module

Foundation