无法使用PHP pthreads

时间:2015-06-12 01:52:04

标签: php arrays class pthreads

我有以下代码,我试图为使用php pthreads的类中的数组赋值无效 - 我已经看过建议使用堆栈无效的解决方案:

<?php
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(E_ALL);

    class WorkerThreads extends Thread
        {
            private $fromlist;

            public function __construct()
            {
                    $this->fromlist = array();
            }

            public function run()
            {
                   $this->fromlist=array("hello"=>1,2);
                   $this->fromlist['hi']="!!!";
                   $this->fromlist[] = array("ho", 1);
            }
        }

            $workers = new WorkerThreads();
            $workers->start();
            print_r($workers);

我得到以下结果:

WorkerThreads Object
(
    [fromlist] => Array
        (
            [hello] => 1
            [0] => 2
        )

)

我期待看到更多的数组元素 - 尽量我可能无法添加更多元素。

我检查了语法,看起来很好 - 问题似乎是如何在pthreads中使用数组 - 我似乎无法理解如何做到这一点。

谁能告诉我我做错了什么?

或者建议上面的一些代码,以便我可以找到一个有效的解决方案?

1 个答案:

答案 0 :(得分:1)

将$ fromlist变量添加到run()函数可以解决问题。