posix_spawnattr_getrunmask()

Updated: April 19, 2023

Get the runmask attribute from a spawn attributes object

Synopsis:

#include <spawn.h>

int posix_spawnattr_getrunmask(
       const posix_spawnattr_t *_Restrict attrp,
       uint32_t *_Restrict runmask_p);

Arguments:

attrp
A pointer to the spawn attributes object that you want to query.
runmask_p
A pointer to a location where the routine can store the current runmask.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The posix_spawnattr_getrunmask() routine retrieves the current value of the runmask attribute from the given spawn attributes object. You must have already initialized the spawn attributes object by calling posix_spawnattr_init().

This attribute is a bitmask of the processors that the spawned program can run on. Processor numbering starts at 0, with each processor corresponding to a bit in the runmask. For example, a runmask of 0x00000005 indicates that the spawned process is restricted to CPUs 0 and 2. For more information, see the Multicore Processing chapter of the QNX Neutrino Programmer's Guide.

This setting takes effect only if the POSIX_SPAWN_EXPLICIT_CPU flag is set; to set this flag, call posix_spawnattr_setxflags(). The default mask is 0xFFFFFFFFU, indicating that the spawned process can run on any processor.

To set the value of this attribute, call posix_spawnattr_setrunmask().

For more information about spawn attributes, see the entry for posix_spawn().

Note: This function is a QNX Neutrino extension.

Returns:

EOK
Success.
EINVAL
An argument was invalid.

Classification:

QNX Neutrino

Safety:  
Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes