pinguo / php-msf-demo

GNU General Public License v2.0
72 stars 41 forks source link

outputJson传入错误HttpCode导致阻塞 #28

Closed gvzhang closed 6 years ago

gvzhang commented 6 years ago

开了Rest\Controller,使用outputJson输出,如果传入的HttpCode是错误的,访问会一直阻塞

use PG\MSF\Rest\Controller;                                                                                                                                     
use App\Models\Demo as DemoModel;                                                                                                                               

class Redis extends Controller                                                                                                                                  
{
    // Redis连接池读写示例
    public function actionPoolSetGet()
    {
        yield $this->getRedisPool('p1')->set('key1', 'val1');
        $val = yield $this->getRedisPool('p1')->get('key1'); 
        $this->outputJson($val, "test error", 800);
    }
}
viaweb3 commented 6 years ago

我这边并没有复现,你可以更新一下你的php-msf试试

gvzhang commented 6 years ago

php-msf已经更新到528eddc了,也重启了,不过还是会阻塞。php-msf群上说到是协程没有捕捉到异常导致的。

xudianyang commented 6 years ago

@gvzhang 已经修复了,是一个bug,https://github.com/pinguo/php-msf/pull/114/files,感谢反馈

gvzhang commented 6 years ago

@xudianyang 能解析下为什么onRequest里面的try catch捕捉不到吗?没想明白 :-( 谢谢

gvzhang commented 6 years ago

搞明白了,原来是在nextRun里面也有schedule,多谢。