Worker 类

(PECL pthreads >= 2.0.0)

简介

Worker 是一个具有持久化上下文的线程对象,通常用来重复使用线程。

当一个 Worker 对象开始之后,会执行它的 run 方法,但是即使 run 方法执行完毕,线程本身也不会消亡,除非遇到以下情况:

  • Worker 对象超出作用范围(没有指向它的引用了)

  • 代码调用了 Worker 对象的 shutdown 方法

  • 整个脚本终止了

这意味着程序员可以在程序执行过程中重用这个线程上下文:在 Worker 对象的栈中添加对象会激活 Worker 对象执行被加入对象的 run 方法。

Warning

程序员必须保持入栈对象的引用,直到它执行完毕或者出栈。Pool 类提供了 Worker 对象的高层抽象, 它可以帮助程序员管理这些引用。

类摘要

Worker extends Thread implements Traversable , Countable , ArrayAccess {
/* 方法 */
public integer getStacked ( void )
public boolean isShutdown ( void )
public boolean isWorking ( void )
public boolean shutdown ( void )
public integer stack ( Threaded &$work )
public integer unstack ([ Threaded &$work ] )
/* 继承的方法 */
public void Thread::detach ( void )
public integer Thread::getCreatorId ( void )
public static Thread Thread::getCurrentThread ( void )
public static integer Thread::getCurrentThreadId ( void )
public integer Thread::getThreadId ( void )
public static mixed Thread::globally ( void )
public boolean Thread::isJoined ( void )
public boolean Thread::isStarted ( void )
public boolean Thread::join ( void )
public void Thread::kill ( void )
public boolean Thread::start ([ integer $options ] )
}

Table of Contents