Worker 類

(PECL pthreads >= 2.0.0)

簡介

Worker 是一個具有持久化上下文的線程對象,通常用來在多個線程中使用。

當(dāng)一個 Worker 對象開始之后,會執(zhí)行它的 run 方法,但是即使 run 方法執(zhí)行完畢,線程本身也不會消亡,除非遇到以下情況:

  • Worker 對象超出作用范圍(沒有指向它的引用了)

  • 代碼調(diào)用了 Worker 對象的 shutdown 方法

  • 整個腳本終止了

這意味著程序員可以在程序執(zhí)行過程中重用這個線程上下文: 在 Worker 對象的棧中添加對象會激活 Worker 對象執(zhí)行被加入對象的 run 方法。

類摘要

class Worker extends Thread implements Traversable, Countable, ArrayAccess {
/* 方法 */
public collect(Callable $collector = ?): int
public getStacked(): int
public isShutdown(): bool
public shutdown(): bool
public stack(Threaded &$work): int
public unstack(): int
/* 繼承的方法 */
public Thread::getCreatorId(): int
public static Thread::getCurrentThreadId(): int
public Thread::getThreadId(): int
publicThread::isJoined(): bool
publicThread::isStarted(): bool
publicThread::join(): bool
public Thread::start(int $options = ?): bool
}

目錄