
=head1 NOM

Win32::Semaphore - Utilisation d'objets sémaphore Win32 depuis Perl

=head1 SYNOPSIS

	require Win32::Semaphore;

	$sem = Win32::Semaphore->new($initial,$maximum,$name);
	$sem->wait;

=head1 DESCRIPTION

Ce module permet l'accès aux objets sémaphore Win32. La méthode
C<wait> et les fonctions C<wait_all> et C<wait_any> sont
héritées du module B<Win32::IPC>. Voir L<Win32::IPC>.

=head2 Méthodes

=over 4

=item $semaphore = Win32::Semaphore->new($initial, $maximum, [$name])

Constructeur pour un nouvel objet sémaphore. C<$initial> est
le compte initial et C<$maximum> est le compte maximum du
sémaphore. Si C<$name> est omis, crée un objet sémaphore anonyme.

Si C<$name> désigne un objet sémaphore déjà existant, alors
C<$initial> et C<$maximum> sont ignorés et l'objet est ouvert.

=item $semaphore = Win32::Semaphore->open($name)

Constructeur pour ouvrir un objet sémaphore existant.

=item $semaphore->release([$increment, [$previous]])

Incrémente le compteur du C<$semaphore> de C<$increment> (1 par défaut).
Si C<$increment> plus la valeur courante du compteur du sémaphore est
plus grand que son compte maximum, le compteur est inchangé.
Retourne vrai si l'incrémentation a eu lieu.

Le compteur du sémaphore (avant incrémentation) est stocké dans le
second argument (s'il y en a un). Il n'est pas nécessaire d'attendre
sur un sémaphore avant d'appeler C<release>, mais vous avez intérêt à
savoir ce que vous faites.

=item $semaphore->wait([$timeout])

Attend que le compteur de C<$semaphore> soit non nul, puis le décrémente
de 1. Voir L<Win32::IPC>.

=back

=head2 Fonctions et Méthodes dépréciées

B<Win32::Semaphore> accepte encore la syntaxe ActiveWare, mais son usage
est désapprouvé.

=over 4

=item Win32::Semaphore::Create($SemObject,$Initial,$Max,$Name)

Utiliser C<$SemObject = Win32::Semaphore-E<gt>new($Initial,$Max,$Name)> à la place.

=item Win32::Semaphore::Open($SemObject, $Name)

Utiliser C<$SemObject = Win32::Semaphore-E<gt>open($Name)> à la place.

=item $SemObj->Release($Count,$LastVal)

Utiliser C<$SemObj-E<gt>release($Count,$LastVal)> à la place.

=back

=head1 AUTEUR

Christopher J. Madsen E<lt>F<chris_madsen@geocities.com>E<gt>

Vaguement basé sur le module original d'ActiveWare Internet Corp.,
F<http://www.ActiveWare.com>

=head1 VERSION FRANÇAISE

Cette traduction française correspond à la version anglaise distribuée avec perl 5.6.1.
Pour en savoir plus concernant ces traductions, consultez http://www.enstimac.fr/Perl/ .

=head1 TRADUCTION EN FRANÇAIS

Jean-Louis Morel <jl_morel@bribes.org>

=cut
