douaikuai2715 2016-01-24 12:07
浏览 26

Php pthreads和monolog

I cannot use monolog logger inside Thread method run.

class MyThread extends Thread
{
    public function run()
    {
        echo 'hihi', PHP_EOL;
        $log = new Logger('MyApp');
        $log->pushHandler(
            new StreamHandler('php://stdout', Logger::INFO)
        );
        $log->addInfo("hoho");
        echo 'haha', PHP_EOL;
    }
}

$thread = new MyThread();

if ($thread->start()) {
    $thread->join();
    echo 'hehe', PHP_EOL;
}

Output:

hihi
hehe

Here PHP pthreads and SQLite3 and here pthread Thread objects reset their state somebody says that I can only use objects inerited from Stackable, Thread or Worker inside my class inherited from Thread. But what if I cannot change Logger class? I cannot use it?

I want to clarify: I cannot use object not inherited from Stackable, Thread or Worker inside class inherited from Thread at all? It is very strange. In other languages I can.

Win 7 x64 Ultimate, php 7 32 bit with thread safety.

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 三菱伺服电机按启动按钮有使能但不动作
    • ¥20 为什么我写出来的绘图程序是这样的,有没有lao哥改一下
    • ¥15 js,页面2返回页面1时定位进入的设备
    • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
    • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
    • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
    • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
    • ¥20 腾讯企业邮箱邮件可以恢复么
    • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
    • ¥15 错误 LNK2001 无法解析的外部符号