UC3M

Grado en Ing. Telemática/Sist. Audiovisuales/Sist. de Comunicaciones

Arquitectura de Sistemas

Septiembre 2017 - Enero 2018

11.2.5. Hilos: Configuración de un hilo

A continuación se muestra los diferentes parámetros de actuación de configuración que afectan a un hilo. Todos ellos son aplicados sobre un un puntero a un tipo pthread_attr_t, que ha de ser inicializado antes de ser usado:

#include <pthread.h >
int   pthread_attr_init(pthread_attr_t *attr);
int   pthread_attr_destroy(pthread_attr_t *attr);

//getter functions
int   pthread_attr_getdetachstate(const pthread_attr_t *attr,int *detachstate);
int   pthread_attr_getinheritsched(const pthread_attr_t *restrict attr,int *restrict inheritsched);
int   pthread_attr_getschedparam(const pthread_attr_t *restrict attr, struct sched_param *restrict param);
int   pthread_attr_getschedpolicy(const pthread_attr_t *restrict attr, int *restrict policy);
int   pthread_attr_getscope(const pthread_attr_t *restrict attr, int *restrict contentionscope);
int   pthread_attr_getstackaddr(const pthread_attr_t *restrict attr, void **restrict stackaddr);
int   pthread_attr_getstacksize(const pthread_attr_t *restrict attr,size_t *restrict stacksize);

//setter functions
int   pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);
int   pthread_attr_setinheritsched(pthread_attr_t *attr, int inheritsched);
int   pthread_attr_setschedparam(pthread_attr_t *restrict attr, const struct sched_param *restrict param);
int   pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy);
int   pthread_attr_setscope(pthread_attr_t *attr, int contentionscope);
int   pthread_attr_setstackaddr(pthread_attr_t *attr, void *stackaddr);
int   pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize);