The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Win32::Event - Use Win32 event objects from Perl

SYNOPSIS

        use Win32::Event;

        $event = Win32::Event->new($manual,$initial,$name);
        $event->wait();

DESCRIPTION

This module allows access to the Win32 event objects. The wait method and wait_all & wait_any functions are inherited from the "Win32::IPC" module.

Methods

$event = Win32::Event->new([$manual, [$initial, [$name]]])

Constructor for a new event object. If $manual is true, you must manually reset the event after it is signalled (the default is false). If $initial is true, the initial state of the object is signalled (default false). If $name is omitted, creates an unnamed event object.

If $name signifies an existing event object, then $manual and $initial are ignored and the object is opened. If this happens, $^E will be set to 183 (ERROR_ALREADY_EXISTS).

$event = Win32::Event->open($name)

Constructor for opening an existing event object.

$event->pulse

Signal the $event and then immediately reset it. If $event is a manual-reset event, releases all threads currently blocking on it. If it's an auto-reset event, releases just one thread.

If no threads are waiting, just resets the event.

$event->reset

Reset the $event to nonsignalled.

$event->set

Set the $event to signalled.

$event->wait([$timeout])

Wait for $event to be signalled. See "Win32::IPC".

AUTHOR

Christopher J. Madsen <cjm@pobox.com>