Примеры
Отсутствуют.
Замечания по использованию
Эти функции являются частью опции Spawn и м огут быть не представлены во всех реализациях.
Логическое обоснование
Исходный интерфейс, предложенный в стандарте IEEE Std 1003.1-2001, определял атрибуты, наследуемые при выполнении операции порождения процесса, в виде структуры. Чтобы иметь возможность выделить некоторые необязательные атрибуты в отдельные опции (например, атрибуты spawn-schedparamn spawn-schedpolicy относятся к опции Process Scheduling), а также с целью расширяемости и совместимости с более новыми POSIX-интерфейсами, для интерфейса атрибутов был изменен тип данных. Этот интерфейс в настоящее время состоит из типа posix_spawnattr_t, представляющего объект атрибутов порожденного процесса, и соответствующих функций, которые позволяют инициализировать или разрушить этот объект атрибутов, а также установить или получить значение каждого отдельного атрибута. Несмотря на то что новый объектно-ориентированный интерфейс более сложен, чем исходнал структура, его проще использовать, легче наращивать и реализовывать.
Будущие направления
Отсутствуют.
Смотри также
posix_spawn (), posix_spawnattr_getsigdefault (), posix_spawnattr_getflags (), 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_spawnattr_setschedpolicy(), posix_spawnattr_setschedparam (), posix_spawnp (), то м Base Definitions стан д арта IEEEStd 1003.1-2001, .
Последовательность внесения изменений
Функции впервые реализованы в выпуске Issue 6, основанием послужил стандарт IEEE Std 1003.1d-1999.
При м еняется интерпретация IЕЕЕ PASC Interpretation 1003.1 #106, в которой отмечается, что результат инициализации уже инициализированного объекта атрибутов не определен.
posix_spawnattr_getflags, posix_spawnattr_setflags
Имя
posix_spawnattr_getflags, posix_spawnattr_setflags— функции считывания и установки атрибута spawn-flags из объекта атрибутов порож д енного процесса (ADVANCED REALTIME).
Синопсис
SPN #include < spawn.h>
int posix_spawnattr_getflags (const posix_spawnattr_t *restrict attr, short *restrict flags);
int posix_spawnattr_setflags (posix_spawnattr_t *attr, short flags);
Описание
Функция posix_spawnattr_getflags () пре д назначена д ля получения значения атрибута spawn-flags из объекта атрибутов, адресуе м ого пара м етро м attr.
Функция posix_spawnattr_setflags () пре д назначена д ля установки значения атрибута spawn-flags в инициализированно м объекте атрибутов, адресуе м о м пара м етро м аttr.
Атрибут spawn-flags используется д ля обозначения того, какие атрибуты процесса должны быть изменены в образе нового процесса при вызове функции posix_spawn() или posix_spawnp(). Этот атрибут представляет собой результат применения поразрядной операции включающего ИЛИ к некоторому числу (которое может быть нулевым) следующих флагов:
POSIX_SPAWN_RESETIDS
POSIX_SPAWN_SETPGROUP
POSIX_SPAWN_SETSIGDEF
POSIX_SPAWN_SETSIGMASK
PS
POSIX_SPAWN_SETSCHEDPARAM
POSIX_SPAWN_SETSCHEDULER
Эти флаги определены в заголовке . Значение, действую щ ее по у м олчанию для этого атрибута, должно соответствовать ситуации, при которой ни один флаг не установлен.
Возвращаемые значения
При успешном выполнении функция posix_spawnattr_getflags () возвращает нулевое значение и сохраняет значение атрибута spawn-flags из объекта атрибутов, адресуе м ого пара м етро м attr, в объекте, адресуе м о м пара м етро м flags; в противном случае возвращается код ошибки, обозначающий ее характер.
При успешном выполнении функция posix_spawnattr_setflags () возвращает нулевое значение, в противном случае — код ошибки, обозначающий ее характер.
Ошибки
Эти функции м огут завершиться неу д ачно, если: [EINVAL] значение, заданное пара м етро м attr, не д опусти м о.
Функция posix_spawnattr__setflags () м ожет завершиться неу д ачно, если:
[ EINVAL ] устанавливаемое значение атрибута недопустимо.
Примеры
Отсутствуют.
Замечания по использованию
Эти функции являются частью опции Spawn и могут быть не пре д ставлены во всех реализациях.
Логическое обоснование
Отсутствует.
Будущие направления
Отсутствуют.
Смотри также
posix_spawn (), posix_spawnattr_destroy (), posix_spawnattr_init (), posix_spawnattr_getsigdefault (), posix_spawnattr_getpgroup (), posix_spawnattr_getschedparam(), posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigmask (), posix_spawnattr_setsigdefault (), posix_spawnattr_setpgroup (), posix_spawnattr_setschedparam(), posix_spawnattr_setschedpolicy (), posix_spawnattr_setsigmask (), posix_spawnp (), том Base Definitions стан д арта IEEE Std 1003.1-2001, .
Читать дальше