posix_spawnattr_init(inc) - phpMan

POSIX_SPAWNATTR_DESTROY(3P)POSIX Programmer's ManuaPOSIX_SPAWNATTR_DESTROY(3P)

PROLOG
       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
       implementation of this interface may differ (consult the  corresponding
       Linux  manual page for details of Linux behavior), or the interface may
       not be implemented on Linux.
NAME
       posix_spawnattr_destroy, posix_spawnattr_init - destroy and  initialize
       spawn attributes object (ADVANCED REALTIME)
SYNOPSIS
       #include <spawn.h>
       int posix_spawnattr_destroy(posix_spawnattr_t *attr);
       int posix_spawnattr_init(posix_spawnattr_t *attr);

DESCRIPTION
       The posix_spawnattr_destroy() function shall destroy a spawn attributes
       object. A destroyed attr attributes object can be  reinitialized  using
       posix_spawnattr_init(); the results of otherwise referencing the object
       after it has been destroyed are undefined. An implementation may  cause
       posix_spawnattr_destroy()  to  set  the object referenced by attr to an
       invalid value.
       The posix_spawnattr_init() function shall initialize a spawn attributes
       object attr with the default value for all of the individual attributes
       used by  the  implementation.  Results  are  undefined  if  posix_spaw-
       nattr_init()   is   called   specifying  an  already  initialized  attr
       attributes object.
       A spawn attributes object is  of  type  posix_spawnattr_t  (defined  in
       <spawn.h>) and is used to specify the inheritance of process attributes
       across a spawn operation. IEEE Std 1003.1-2001 does not define compari-
       son or assignment operators for the type posix_spawnattr_t.
       Each  implementation  shall  document the individual attributes it uses
       and  their  default  values  unless  these  values   are   defined   by
       IEEE Std 1003.1-2001.  Attributes  not defined by IEEE Std 1003.1-2001,
       their default values, and the names of the associated functions to  get
       and set those attribute values are implementation-defined.
       The  resulting  spawn  attributes  object (possibly modified by setting
       individual attribute  values),  is  used  to  modify  the  behavior  of
       posix_spawn()  or  posix_spawnp().  After a spawn attributes object has
       been used  to  spawn  a  process  by  a  call  to  a  posix_spawn()  or
       posix_spawnp(), any function affecting the attributes object (including
       destruction) shall not affect any process that has been spawned in this
       way.
RETURN VALUE
       Upon  successful  completion, posix_spawnattr_destroy() and posix_spaw-
       nattr_init() shall return zero; otherwise, an  error  number  shall  be
       returned to indicate the error.
ERRORS
       The posix_spawnattr_init() function shall fail if:
       ENOMEM Insufficient  memory  exists  to initialize the spawn attributes
              object.

       The posix_spawnattr_destroy() function may fail if:
       EINVAL The value specified by attr is invalid.

       The following sections are informative.
EXAMPLES
       None.
APPLICATION USAGE
       These functions are part of the Spawn option and need not  be  provided
       on all implementations.
RATIONALE
       The  original  spawn interface proposed in IEEE Std 1003.1-2001 defined
       the attributes that  specify  the  inheritance  of  process  attributes
       across  a  spawn operation as a structure. In order to be able to sepa-
       rate optional individual attributes  under  their  appropriate  options
       (that is, the spawn-schedparam and spawn-schedpolicy attributes depend-
       ing upon the Process Scheduling option), and also for extensibility and
       consistency  with  the newer POSIX interfaces, the attributes interface
       has been changed to an opaque data type. This interface now consists of
       the  type  posix_spawnattr_t,  representing  a spawn attributes object,
       together  with  associated  functions  to  initialize  or  destroy  the
       attributes  object,  and  to  set  or  get  each  individual attribute.
       Although the new object-oriented interface is  more  verbose  than  the
       original  structure,  it is simple to use, more extensible, and easy to
       implement.
FUTURE DIRECTIONS
       None.
SEE ALSO
       posix_spawn(),  posix_spawnattr_getsigdefault(),   posix_spawnattr_get-
       flags(),  posix_spawnattr_getpgroup(), posix_spawnattr_getschedparam(),
       posix_spawnattr_getschedpolicy(),         posix_spawnattr_getsigmask(),
       posix_spawnattr_setsigdefault(),            posix_spawnattr_setflags(),
       posix_spawnattr_setpgroup(), posix_spawnattr_setsigmask(),  posix_spaw-
       nattr_setschedpolicy(),                posix_spawnattr_setschedparam(),
       posix_spawnp(), the Base Definitions  volume  of  IEEE Std 1003.1-2001,
       <spawn.h>
COPYRIGHT
       Portions  of  this text are reprinted and reproduced in electronic form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
       Specifications Issue 6, Copyright (C) 2001-2003  by  the  Institute  of
       Electrical  and  Electronics  Engineers, Inc and The Open Group. In the
       event of any discrepancy between this version and the original IEEE and
       The  Open Group Standard, the original IEEE and The Open Group Standard
       is the referee document. The original Standard can be  obtained  online
       at http://www.opengroup.org/unix/online.html .

IEEE/The Open Group                  2003          POSIX_SPAWNATTR_DESTROY(3P)