Dados gerais

Interface: Semaphore
Arquivos: lib/semaphore.h
Última atualização: 23/12/2001
Autor: Luiz Henrique Shigunov
Informações

Descrição
Estruturas
Funções
  • 0x00 - Destroy - Destrói o semáforo
  • 0x01 - Init - Inicia o semáforo
  • 0x02 - P - Obtém o semáforo
  • 0x03 - TryP - Tenta obter o semáforo
  • 0x04 - V - Libera o semáforo
  • Descrição

    Esta página descreve a interface do usuário Semaphore.

    Semáforos são normalmente utilizados para controlar o uso de recursos compartilhados.

    Estruturas

    typedef struct {
        int count;
        unsigned int data[3];
    } Semaphore;
    

    count é o contador do semáforo e data são dados específicos do sincronizador.

    0x00 - Destroy

    Sintaxe

    int Destroy(Semaphore *s);

    Descrição

    Esta função destrói o semáforo s, liberando os seus recursos.

    O semáforo não pode estar em uso.

    Valor de retorno

    0x01 - Init

    Sintaxe

    int Init(Semaphore *s, int value, int prop);

    Descrição

    Esta função inicia o semáforo s com o valor value e as propriedades prop.

    prop ainda não é usado.

    Valor de retorno

    0x02 - P

    Sintaxe

    int P(Semaphore *s);

    Descrição

    Esta função obtém o semáforo s.

    Se o contador do semáforo for menor ou igual a 0, P bloqueia a linha de execução até o contador ficar positivo.

    Valor de retorno

    0x03 - TryP

    Sintaxe

    int TryP(Semaphore *s);

    Descrição

    Esta função tenta obter o semáforo s.

    Ela se comporta da mesma maneira que P, mas retorna erro se o contador do semáforo for menor ou igual a 0.

    Valor de retorno

    0x04 - V

    Sintaxe

    int V(Semaphore *s);

    Descrição

    Esta função libera o semáforo s.

    Valor de retorno