mpyw\Co\Internal\AbstractScheduler::consume PHP Метод

consume() публичный Метод

Poll completed cURL entries, consume cURL queue and resolve them.
public consume ( )
    public function consume()
    {
        $entries = $this->readCompletedEntries();
        foreach ($entries as $entry) {
            curl_multi_remove_handle($this->mh, $entry['handle']);
            unset($this->added[(string) $entry['handle']]);
            $this->interruptConsume();
        }
        $this->resolveEntries($entries);
    }

Usage Example

Пример #1
0
Файл: Pool.php Проект: mpyw/co
 /**
  * Run curl_multi_exec() loop.
  */
 public function wait()
 {
     curl_multi_exec($this->mh, $active);
     // Start requests.
     do {
         // if cURL handle is running, use curl_multi_select()
         // otherwise, just sleep until nearest time
         $this->scheduler->isEmpty() ? $this->delayer->sleep() : curl_multi_select($this->mh, $this->options['interval']) < 0 && usleep($this->options['interval'] * 1000000);
         curl_multi_exec($this->mh, $active);
         $this->scheduler->consume();
         $this->delayer->consume();
     } while (!$this->haltException && (!$this->scheduler->isEmpty() || !$this->delayer->isEmpty()));
     if ($this->haltException) {
         throw $this->haltException;
     }
 }