我在登錄時(shí),使用Gateway::bindUid($client_id, $pc_user_id);綁定了登錄用戶信息
然后,在其它要用的地方時(shí),我先使用Gateway::isUidOnline($pc_user_id)判斷是否在線,有在線再處理業(yè)務(wù)發(fā)送信息。
但是在使用中,發(fā)現(xiàn)會(huì)有極小的概率出現(xiàn)Gateway::isUidOnline返回false值,不在線。有時(shí)又可以了。很奇怪。
請教下大概會(huì)是什么原因呢?
如何避免出現(xiàn)這樣的問題呢?
這是綁定的
$pc_user_id=$admin_id.'||wx||'.$user_id;
Gateway::bindUid($client_id, $pc_user_id);//更新pcid值
Gateway::leaveGroup($client_id,'NoDistributionGroup');//從未分配組去掉
Gateway::leaveGroup($client_id,'NoWeChatGroup');//從未登錄組去掉
這是調(diào)用的
$pc_user_id=$admin_id.'||wx||'.$user_id;
if(Gateway::isUidOnline($pc_user_id)){
print_r('在線');
//在線處理業(yè)務(wù)相關(guān)
}else{
//不在線,出現(xiàn)異常
}
workerman4.0.19+GatewayWorker