Specify a resource partition identifier that the spawned process should be associated with
#include <posix_spawnattr.h> int posix_spawnattr_addpartid( posix_spawnattr_t *_Restrict attrp, part_id_t part_id, part_dcmd_flags_t part_flags);
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Specify a resource partition that the spawned process should be associated with by its partition identifier. If an ID is specified for a non-existent partition, it will not be known until the posix_spawn() call is made.
Two additional forms for this call, addmempartid() and addschedpartid(), are implemented as macros in spawn.h. The partition association only takes effect if the corresponding POSIX_SPAWN_SETMPART or POSIX_SPAWN_SETSPART flag is set. Setting one of these flags without providing a partition of that type may give unintended results. This function is a QNX Neutrino extension to posix_spawnattr_t(). For information about inheritance rules as they apply to partition association, see the Adaptive Partitioning User Guide. |
The process ID of the child process, or -1 if an error occurs (errno is set).
If this function fails and the partition_name provided is a group name, then it is unspecified how many of the pseudo partitions within the group name are added to the attributes object pointed to by attrp. For this scenario, we recommend that you destroy the attributes object, and initialize a new attributes object. |
Some partition association errors may not be reported until the posix_spawn() call is made. |
If you add the partition identified by part_id posix_spawnattr_t object attrp, you'll get the following messages:
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | Yes |
Signal handler | Yes |
Thread | Yes |
posix_spawn(), posix_spawn_file_actions_addclose(), posix_spawn_file_actions_adddup2(), posix_spawn_file_actions_addopen(), posix_spawn_file_actions_destroy(), posix_spawn_file_actions_init(), posix_spawnattr_addpartid(), posix_spawnattr_addpartition(), posix_spawnattr_destroy(), posix_spawnattr_getcred(), posix_spawnattr_getflags(), posix_spawnattr_getnode(), posix_spawnattr_getpartid(), posix_spawnattr_getpgroup(), posix_spawnattr_getrunmask(), posix_spawnattr_getschedparam(), posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigdefault(), posix_spawnattr_getsigignore(), posix_spawnattr_getsigmask(), posix_spawnattr_getstackmax(), posix_spawnattr_getxflags(), posix_spawnattr_init(), posix_spawnattr_setcred(), posix_spawnattr_setflags(), posix_spawnattr_setnode(), posix_spawnattr_setpgroup(), posix_spawnattr_setschedparam(), posix_spawnattr_setrunmask(), posix_spawnattr_setschedpolicy(), posix_spawnattr_setsigdefault(), posix_spawnattr_setsigignore(), posix_spawnattr_setsigmask(), posix_spawnattr_setstackmax(), posix_spawnattr_setxflags(), posix_spawnp()