08.02.2015 Views

Programação Funcional e Concorrente com Scheme

Programação Funcional e Concorrente com Scheme

Programação Funcional e Concorrente com Scheme

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

notas de aula - Jerônimo C. Pellegrini<br />

# include <br />

# include <br />

# include < semaphore .h><br />

sem_t * sem_open ( const char *name , int oflag );<br />

sem_t * sem_open ( const char *name , int oflag ,<br />

Estas funções criam semáforos <strong>com</strong> nome.<br />

int sem_close ( sem_t * sem );<br />

mode_t mode , unsigned int value );<br />

Finaliza um semáforo. Retorna zero em caso de sucesso ou −1 em caso de erro (quando<br />

também modifica errno).<br />

int sem_post ( sem_t * sem );<br />

int sem_wait ( sem_t * sem );<br />

int sem_trywait ( sem_t * sem );<br />

int sem_timedwait ( sem_t *sem ,<br />

const struct timespec * abs_timeout );<br />

int sem_getvalue ( sem_t *sem , int * sval );<br />

O valor do contador interno do semáforo *sem é armazenado em *sval. Retorna 0 em<br />

caso de sucesso; em caso de erro retorna −1 e modifica errno.<br />

c.2.3<br />

Variáveis de condição<br />

pthread_cond_t cond = PTHREAD_COND_INITIALIZER ;<br />

pthread_cond_init ( pthread_cond_t * var , attr );<br />

pthread_cond_destroy ( pthread_cond_t * cond );<br />

O primeiro argumento de pthread_cond_init deve ser um ponteiro para uma estrutura<br />

do tipo pthread_cond_t.<br />

pthread_cond_signal ( pthread_cond_t * var );<br />

pthread_cond_wait ( pthread_cond_t *var , pthread_mutex_t * mutex );<br />

A função pthread_cond_signal sinaliza uma variável de condição.<br />

Versão Preliminar<br />

[ 27 de outubro de 2010 at 15:47 ]<br />

337

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!