(PECL ev >= 0.2.0)
Representa um loop de eventos que é sempre distinto do loop padrão. Ao contrário do loop padrão, ele não pode lidar com observadores EvChild.
Tendo threads, temos que criar um loop por thread e usar o loop padrão no thread pai.
O loop de eventos padrão é inicializado automaticamente por Ev. É acessível através de métodos da classe Ev, ou através do método EvLoop::defaultLoop().
$flags
= ?,$data
= NULL
,$io_interval
= 0.0
,$timeout_interval
= 0.0
$pid
,$trace
,$callback
,$data
= ?,$priority
= ?$flags
= Ev::FLAG_AUTO
,$data
= NULL
,$io_interval
= 0.
,$timeout_interval
= 0.
$other
,$callback
= ?,$data
= ?,$priority
= ?$fd
,$events
,$callback
,$data
= null
,$priority
= 0
$offset
,$interval
,$callback
,$data
= null
,$priority
= 0
$signum
,$callback
,$data
= null
,$priority
= 0
$path
,$interval
,$callback
,$data
= null
,$priority
= 0
Dados personalizados anexados ao loop
Somente Leitura. As opções de backend indicando o backend do evento em uso.
Somente Leitura.
true
se for o loop de eventos padrão.
A contagem de iterações atuais do loop. Veja Ev::iteration()
O número de observadores pendentes.
0
indica que não há observadores pendentes.
Um
io_interval mais alto
permite que
libev
gaste mais tempo coletando eventos
EvIo,
para que mais eventos possam ser tratados por iteração, ao custo de
aumentar a latência. Os tempos limite
(EvPeriodic
e
EvTimer
) não serão afetados. Definir isso com um valor diferente de zero introduzirá
uma chamada
sleep()
adicional na maioria das iterações de loop. O tempo de suspensão garante que
libev
não pesquisará eventos
EvIo
mais de uma vez por esse intervalo, em média. Muitos
programas geralmente podem se beneficiar configurando o
io_interval
para um valor próximo de
0.1
,
o que geralmente é suficiente para servidores interativos (não para jogos). Geralmente
não faz muito sentido defini-lo com um valor inferior a
0.01
,
pois isso se aproxima da granularidade de tempo da maioria dos sistemas.
Veja também » FUNÇÕES DE CONTROLE DE LOOPS DE EVENTOS .
Um timeout_interval maior permite que libev gaste mais tempo coletando tempos limite, às custas de maior latência/jitter/inexatidão (o retorno de chamada do inspetor será chamado mais tarde). Os observadores de EvIo não serão afetados. Definir isso como um valor não nulo não introduzirá nenhuma sobrecarga no libev . Veja também » FUNÇÕES DE CONTROLE DE LOOPS DE EVENTOS .
A profundidade da recursão. Veja Ev::depth() .