logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       These functions are part of the Spawn option and need not be provided on all implementations.

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_spawnattr_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. POSIX.1‐2008 does not define comparison 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 POSIX.1‐2008.  Attributes not defined by POSIX.1‐2008, 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.

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.

       Thefollowingsectionsareinformative.

Examples

       None.

Future Directions

       None.

Name

       posix_spawnattr_destroy,  posix_spawnattr_init — destroy and initialize spawn attributes object (ADVANCEDREALTIME)

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.

Rationale

       The original spawn interface proposed in POSIX.1‐2008 defined the attributes that specify the inheritance
       of  process  attributes across a spawn operation as a structure. In order to be able to separate optional
       individual attributes  under  their  appropriate  options  (that  is,  the  spawn-schedparam  and  spawn-schedpolicy  attributes  depending  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.

Return Value

       Upon successful completion,  posix_spawnattr_destroy()  and  posix_spawnattr_init()  shall  return  zero;
       otherwise, an error number shall be returned to indicate the error.

See Also

posix_spawn(), posix_spawnattr_getsigdefault(), posix_spawnattr_getflags(), posix_spawnattr_getpgroup(),
       posix_spawnattr_getschedparam(), posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigmask()

       The Base Definitions volume of POSIX.1‐2017, <spawn.h>

Synopsis

       #include <spawn.h>

       int posix_spawnattr_destroy(posix_spawnattr_t *attr);
       int posix_spawnattr_init(posix_spawnattr_t *attr);

See Also