The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Win32::Mutex - Use Win32 mutex objects from Perl

SYNOPSIS

        require Win32::Mutex;

        $mutex = Win32::Mutex->new($initial,$name);
        $mutex->wait;

DESCRIPTION

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

Methods

$mutex = Win32::Mutex->new([$initial, [$name]])

Constructor for a new mutex object. If $initial is true, requests immediate ownership of the mutex (default false). If $name is omitted, creates an unnamed mutex object.

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

$mutex = Win32::Mutex->open($name)

Constructor for opening an existing mutex object.

$mutex->release

Release ownership of a $mutex. You should have obtained ownership of the mutex through new or one of the wait functions. Returns true if successful.

$mutex->wait([$timeout])

Wait for ownership of $mutex. See "Win32::IPC".

Deprecated Functions and Methods

Win32::Mutex still supports the ActiveWare syntax, but its use is deprecated.

Create($MutObj,$Initial,$Name)

Use $MutObj = Win32::Mutex->new($Initial,$Name) instead.

Open($MutObj,$Name)

Use $MutObj = Win32::Mutex->open($Name) instead.

$MutObj->Release()

Use $MutObj->release instead.

AUTHOR

Christopher J. Madsen <cjm@pobox.com>

Loosely based on the original module by ActiveWare Internet Corp., http://www.ActiveWare.com