コード例 #1
0
 protected function process($queueName, $queueObjectName)
 {
     $queue = Yii::$app->{$queueObjectName};
     $job = $queue->pop($queueName);
     if ($job) {
         try {
             $jobObject = call_user_func($job['body']['serializer'][1], $job['body']['object']);
             $worker = new WorkerThread($jobObject);
             $worker->run();
             $queue->delete($job);
             //$jobObject->run();
             return true;
         } catch (\Exception $e) {
             Yii::error($e->getMessage(), __METHOD__);
         }
     }
     return false;
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 protected function process($queueName, $queueObjectName)
 {
     $queue = Yii::$app->{$queueObjectName};
     $job = $queue->pop($queueName);
     if ($job) {
         try {
             $jobObject = call_user_func($job['body']['serializer'][1], $job['body']['object']);
             $thread = new WorkerThread($job['body']['object']);
             $this->_threads[] = $thread;
             $thread->start();
             $queue->delete($job);
             return true;
         } catch (\Exception $e) {
             Yii::$app->getErrorHandler()->logException($e);
             return true;
         }
     }
     return false;
 }