Styled by PHP-manual.css
pthreads
PHP Manual

Worker クラス

(PECL pthreads >= 2.0.0)

はじめに

ワーカースレッドには永続コンテキストがあり、たいていの場合はスレッドに対して使えます。

ワーカーを開始させると run メソッドを実行しますが、以下のいずれかの条件を満たすまでスレッドは終了しません。

  • Worker がスコープから外れる (どこからも参照されなくなる)

  • プログラマーが shutdown を呼ぶ

  • スクリプトが終了する

つまり、プログラマーは実行中のコンテキストを再利用できるということです。 オブジェクトを Worker のスタックに置くと、そのオブジェクトの run メソッドを Worker が実行します。

警告

プログラマーは、スタックに積んだオブジェクトが実行されるかスタックから取り出されるまで、そのオブジェクトへの参照を保持しなければいけません。 Pool クラスは Worker の機能をより上位レベルで抽象化したもので、プログラマーにかわってオブジェクトの参照を管理します。

クラス概要

Worker extends Thread implements Traversable , Countable , ArrayAccess {
/* メソッド */
public int collect ([ Callable $collector ] )
public int getStacked ( void )
public bool isShutdown ( void )
public boolean isWorking ( void )
public bool shutdown ( void )
public int stack ( Threaded &$work )
public int unstack ( void )
/* 継承したメソッド */
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 ] )
}

目次


pthreads
PHP Manual