GearmanClient::addTaskHigh
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
GearmanClient::addTaskHigh
Референца за `gearmanclient.addtaskhigh.php` со подобрена типографија и навигација.
GearmanClient::addTaskHigh
(PECL gearman >= 0.5.0)
GearmanClient::addTaskHigh — Add a high priority task to run in parallel
= NULL
string
$function_name,string|int|float
$workload,mixed
$context = null,?string
$unique_key = null): GearmanTask|false
Додај задача со висок приоритет за извршување паралелно Додава позадинска задача со низок приоритет што ќе се извршува паралелно со други задачи. Повикајте го овој метод за сите задачи што треба да се извршуваат паралелно, а потоа повикајте за извршување на работата. Задачите со висок приоритет ќе бидат избрани од редот пред оние со нормален или низок приоритет.
Параметри
function_name- GearmanClient::do()
workload- Регистрирана функција што работникот треба да ја изврши
context- Задачите со низок приоритет ќе бидат избрани од редот по оние со нормален или висок приоритет.
unique_key- Серијализирани податоци за обработка
Вратени вредности
А GearmanTask објект или false Контекст на апликацијата што треба да се поврзе со задачата
Примери
Додава задача со висок приоритет за извршување паралелно со други задачи. Повикајте го овој метод за сите задачи со висок приоритет што треба да се извршат паралелно, а потоа повикајте
Пример #1 Задача со висок приоритет заедно со две нормални задачи
<?php
# create the gearman client
$gmc= new GearmanClient();
# add the default job server
$gmc->addServer();
# set the callback for when the job is complete
$gmc->setCompleteCallback("reverse_complete");
# add tasks, one of which is high priority
$task= $gmc->addTask("reverse", "Hello World!", null, "1");
$task= $gmc->addTaskHigh("reverse", "!dlroW olleH", null, "2");
$task= $gmc->addTask("reverse", "Hello World!", null, "3");
if (! $gmc->runTasks())
{
echo "ERROR " . $gmc->error() . "\n";
exit;
}
echo "DONE\n";
function reverse_complete($task)
{
echo "COMPLETE: " . $task->unique() . ", " . $task->data() . "\n";
}
?>Горниот пример ќе прикаже нешто слично на:
COMPLETE: 2, Hello World! COMPLETE: 3, !dlroW olleH COMPLETE: 1, !dlroW olleH DONE
Види Исто така
- За сет од задачи претходно додадени со , овој повик започнува со паралелно извршување на задачите.
- GearmanClient::addTaskHigh() - Додај задача со висок приоритет што ќе се извршува паралелно
- GearmanClient::addTaskLow() - Додај задача со низок приоритет што ќе се извршува паралелно
- GearmanClient::addTaskBackground() - Додај позадинска задача што ќе се извршува паралелно
- GearmanClient::addTaskHighBackground() Задача со низок приоритет е вклучена меѓу две други задачи. Достапен е еден работник, така што задачите се извршуваат една по една, при што задачата со низок приоритет се извршува последна.
- Додава позадинска задача со низок приоритет што ќе се извршува паралелно со други задачи. Повикајте го овој метод за сите задачи што треба да се извршуваат паралелно, а потоа повикајте - Додај позадинска задача со висок приоритет што ќе се извршува паралелно