Exemplo n.º 1
0
 public function testRemoveAllListenersWithoutArguments()
 {
     $listenersCalled = 0;
     $this->emitter->on('foo', function () use(&$listenersCalled) {
         $listenersCalled++;
     });
     $this->emitter->on('bar', function () use(&$listenersCalled) {
         $listenersCalled++;
     });
     $this->emitter->removeAllListeners();
     $this->assertSame(0, $listenersCalled);
     $this->emitter->emit('foo');
     $this->emitter->emit('bar');
     $this->assertSame(0, $listenersCalled);
 }
Exemplo n.º 2
0
 /**
  * Removes all signal handlers
  *
  * @param int|null $signo    The signal number
  */
 public function removeAllListeners($signo = null)
 {
     // prepare a list of signal numbers to deal with
     $signoList = [];
     if (!is_null($signo)) {
         $signoList = [$signo];
     } elseif (is_array($this->listeners)) {
         $signoList = array_keys($this->listeners);
     }
     // call the parent's code
     parent::removeAllListeners($signo);
     // uninstall PCNTL signal handlers
     foreach ($signoList as $realSigno) {
         pcntl_signal($realSigno, SIG_DFL);
     }
 }