使用swoole開發(fā)項目, 有些地方遇到 must be called in the coroutine, 意思是需要在coroutine協(xié)程里運行。
swoole中的一些跟coroutine協(xié)程相關(guān)的接口, 必須要在協(xié)程中執(zhí)行, 比如
Coroutine\Channel
Coroutine\Redis
Coroutine\MySQL
…
解決的辦法就是把相關(guān)代碼放到協(xié)程里去。
舉個例子:
$db = new Swoole\Coroutine\MySQL();
會提示
must be called in the coroutine
把代碼放到協(xié)程中去就行了
go(function() {
$db = new Swoole\Coroutine\MySQL();
});