X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fworker.php;h=c18155c5fe598ef91f97479b0ae9b58bdc2f46a5;hb=9915523490e6547e9f6971884a7f502cc90d897a;hp=1d1ab2af33d407a2f7cbabb10d372db4bc9731f0;hpb=e856ab9a09c74e621b2df5a7d325d71575f06b5e;p=friendica.git diff --git a/mod/worker.php b/mod/worker.php index 1d1ab2af33..c18155c5fe 100644 --- a/mod/worker.php +++ b/mod/worker.php @@ -1,16 +1,29 @@ start_process(); + Worker::startProcess(); logger("Front end worker started: ".getmypid()); - call_worker(); + Worker::callWorker(); - if ($r = poller_worker_process()) { - poller_execute($r[0]); + if ($r = Worker::workerProcess()) { + // On most configurations this parameter wouldn't have any effect. + // But since it doesn't destroy anything, we just try to get more execution time in any way. + set_time_limit(0); + + $fields = ['executed' => DateTimeFormat::utcNow(), 'pid' => getmypid(), 'done' => false]; + $condition = ['id' => $r[0]["id"], 'pid' => 0]; + if (DBA::update('workerqueue', $fields, $condition)) { + Worker::execute($r[0]); + } } - call_worker(); + Worker::callWorker(); + + Worker::unclaimProcess(); - $a->end_process(); + Worker::endProcess(); logger("Front end worker ended: ".getmypid());