Função EventLoop_Stop
Cabeçalho: #include <applibs/eventloop.h>
Impede a execução do EventLoop e faz com que EventLoop_Run retorne o controle ao chamador.
int EventLoop_Stop(EventLoop *el);
Parâmetros
-
el
Um ponteiro para oEventLoop
objeto.
Valor retornado
Retorna 0 para êxito ou -1 para falha, nesse caso errno
é definido como o valor do erro.
Observações
Essa função pode ser chamada de um retorno de chamada de evento ou de outro thread para parar o loop atual e retornar de EventLoop_Run
.
Se chamado de um retorno de chamada, EventLoop_Run interromperá de forma síncrona. Depois que EventLoop_Stop retornar, nenhum evento adicional será processado por EventLoop_Run. EventLoop_Run interromperá o processamento de eventos e retornará ao chamador.
Se chamado de outro thread, EventLoop_Run
ele será interrompido de forma assíncrona e retornará ao chamador. Como resultado, EventLoop_Run
ainda pode processar alguns eventos após EventLoop_Stop
o retorno.
Um EventLoop
objeto é um objeto de thread único. Uma tentativa de usar EventLoop
de vários threads simultaneamente resultará em um comportamento indefinido. A única exceção é uma chamada para 'EventLoop_Stop.