Na aula de 9/4, discutimos o conceito de semáforos. A biblioteca pthreads disponibiliza um mecanismo de semáforos, apesar desse não ser o principal mecanismo de sincronização associado a pthreads, como veremos mais tarde.
Para ter uma idéia do funcionamento dos semáforos em pthreads,
veja a implementação de Andrews, apresentada na página 187,
do programa do produtor/consumidor com buffer limitadíssimo.
Observe a necesidade de incluir o arquivo semaphore.h!
Observe também que os semáforos são variáveis como outras
quaisquer, que devem ser declaradas globalmente.
Depois de compilar o programa, por exemplo gerando prodcons
,
execute:
prodcons num_iteracoes
Utilize man
para entender as chamadas
às funções de semáforos.
Tarefas da aula (ou semana) de hoje: