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

POSIX::1003::Proc - POSIX handling processes

=head1 INHERITANCE

 POSIX::1003::Proc
   is a POSIX::1003

=head1 SYNOPSIS

  use POSIX::1003::Proc qw/abort setpgid/;

  abort();
  setpgid($pid, $pgid);

=head1 DESCRIPTION

Functions which are bound to each separate process.

=head2 Exporter

=head1 METHODS

=over 4

=item POSIX::1003::Proc-E<gt>B<exampleValue>(NAME)

See L<POSIX::1003/"METHODS">

=back

=head1 FUNCTIONS

=head2 Standard POSIX functions from stdlib.h

=over 4

=item B<abort>()

Abnormal process exit.

=back

=head2 Standard POSIX functions from sys/wait.h

These functions have captial names because in C they are implemented
as macro's (which are capitalized by convension)

=over 4

=item B<WEXITSTATUS>($?)

Returns the normal exit status of the child process. Only meaningful
if C<WIFEXITED($?)> is true.

=item B<WIFEXITED>($?)

Returns true if the child process exited normally: "exit()" or by
falling off the end of "main()".

=item B<WIFSIGNALED>($?)

Returns true if the child process terminated because of a signal.

=item B<WIFSTOPPED>($?)

Returns true if the child process is currently stopped. Can happen only
if you specified the C<WUNTRACED> flag to waitpid().

=item B<WSTOPSIG>($?)

Returns the signal the child process was stopped for. Only meaningful
if C<WIFSTOPPED($?)> is true.

=item B<WTERMSIG>($?)

Returns the signal the child process terminated for. Only meaningful
if C<WIFSIGNALED($?)> is true.

=item B<wait>()

Simply L<perlfunc/wait>.

=item B<waitpid>(PID)

Simply L<perlfunc/waitpid>.

=back

=head2 Standard POSIX functions from unistd.h

=over 4

=item B<_exit>(CODE)

Leave the program without calling handlers registered with C<atexit>
(which is not available in Perl)

=item B<ctermid>()

Generates the path name for the controlling terminal of this process.
  my $path = ctermid();

=item B<cuserid>()

Get the login name of the effective user of the current process.
See also C<perldoc -f getlogin>
  my $name = cuserid();

=item B<getcwd>()

Returns the name of the current working directory.  See also Cwd.

=item B<nice>(INTEGER)

  use POSIX::1003::Proc 'nice';
  $new_prio = nice($increment);

=item B<pause>()

=item B<setpgid>(PID, PPID)

=item B<setsid>()

=item B<tcgetpgrp>(FD)

=item B<tcsetpgrp>(FD, PID)

=item B<times5>()

The CORE C<times()> function returns four values, conveniently converted
into seconds (float).  The POSIX C<times()> returns five values in
clocktics. To disambique those two, we offer the POSIX function under
a slightly different name.

          ($user, $sys, $cuser, $csys) = CORE::times();
 ($elapse, $user, $sys, $cuser, $csys) = POSIX::times();
 ($elapse, $user, $sys, $cuser, $csys) = times5();

=back

=head1 CONSTANTS

=head2 Constants from stdlib.h

 EXIT_FAILURE
 EXIT_SUCCESS

=head2 Constants from limits.h

 CHILD_MAX

=head1 SEE ALSO

This module is part of POSIX-1003 distribution version 0.13,
built on July 26, 2012. Website: F<http://perl.overmeer.net>.  The code is based on L<POSIX>, which
is released with Perl itself.  See also M<POSIX::Util> for
additional functionality.

=head1 COPYRIGHTS

Copyrights of the perl code and the related documentation by
2011-2012 by [Mark Overmeer]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See F<http://www.perl.com/perl/misc/Artistic.html>