PHP Conference Japan 2024

GearmanWorker::addFunction

(PECL gearman >= 0.5.0)

GearmanWorker::addFunction註冊並新增回呼函式

說明

public GearmanWorker::addFunction(
    字串 $function_name,
    可呼叫 $function,
    混合 $context = null,
    整數 $timeout = 0
): 布林值

向工作伺服器註冊一個函式名稱,並指定與該函式對應的回呼。也可以選擇指定額外的應用程式上下文資料,以便在呼叫回呼時使用,以及逾時時間。

參數

函式名稱

要向作業伺服器註冊的函式名稱。

函式

當提交已註冊函式名稱的作業時,會呼叫的回呼函式。

上下文

對任意應用程式上下文資料的參考,可以由工作函式修改。

逾時

以秒為單位的時間間隔。

回傳值

成功時回傳 true,失敗時回傳 false

範例

範例 #1 使用額外應用程式上下文資料的簡單工作程式

<?php

# 取得 Gearman 工作程式
$worker= new GearmanWorker();

# 加入預設伺服器 (localhost)
$worker->addServer();

# 定義一個變數來存放應用程式資料
$count= 0;

# 加入 "reverse" 函式
$worker->addFunction("reverse", "reverse_cb", $count);

# 啟動工作程式
while ($worker->work());

function
reverse_cb($job, &$count)
{
$count++;
return
"$count: " . strrev($job->workload());
}

?>

執行一個提交兩個 `reverse` 函式作業的客戶端,將會產生類似以下的輸出:

1: olleh
2: dlrow

參見

新增註記

使用者貢獻的註記

此頁面沒有使用者貢獻的註記。
To Top