NAME

Thread::SigMask - Thread specific signal masks

VERSION

Version 0.001

SYNOPSIS

    use Thread::SigMask qw/sigset/;
	use POSIX qw/SIG_BLOCK SIG_UNBLOCK/;
	
    sigmask(SIG_BLOCK, $sigset);
	...
    sigmask(SIG_UNBLOCK, $sigset);

DESCRIPTION

This module provides per-thread signal masks. On non-threaded perl's, it will be effectively the same as POSIX::sigprocmask. The interface works exactly the same as sigprocmask.

SUBROUTINES

sigmask($how, $newset, $oldset = undef)

Change and/or examine calling process's signal mask. This uses POSIX::SigSet objects for the newset and oldset arguments. The behavior of the call is dependent on the value of how.

  • SIG_BLOCK

    The set of blocked signals is the union of the current set and the set argument.

  • SIG_UNBLOCK

    The signals in set are removed from the current set of blocked signals. It is permissible to attempt to unblock a signal which is not blocked.

  • SIG_SETMASK

    The set of blocked signals is set to the argument set.

If oldset is defined, the previous value of the signal mask is stored in oldset. If newset is NULL, then the signal mask is unchanged (i.e., how is ignored), but the current value of the signal mask is nevertheless returned in oldset (if it is not NULL).

SEE ALSO

Signal::Mask

AUTHOR

Leon Timmermans, <leont at cpan.org>

BUGS

Please report any bugs or feature requests to bug-thread-sigmask at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Thread-SigMask. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Thread::SigMask

You can also look for information at:

ACKNOWLEDGEMENTS

Parts of this documentation is shamelessly stolen from POSIX and Linux' sigprocmask(2).

LICENSE AND COPYRIGHT

Copyright 2010 Leon Timmermans.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.