国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

Gateway定時(shí)器問題

yxon

我遇到的場(chǎng)景是這樣:
在onMessage中用戶發(fā)送綁定信息過來后我會(huì)生成一個(gè)定時(shí)器來主動(dòng)推送數(shù)據(jù) 這塊邏輯執(zhí)行時(shí)間比較久,導(dǎo)致在這個(gè)定時(shí)器執(zhí)行過程中 其他用戶發(fā)送綁定信息服務(wù)端阻塞不會(huì)綁定成功
這種情況下應(yīng)該怎么處理?

1446 2 0
2個(gè)回答

2548a

耗時(shí)操作就不要放到gateway進(jìn)程里去,單獨(dú)開一個(gè)進(jìn)程, 調(diào)用getAllUidList 接口獲取綁定的uid,然后調(diào)用 sendToUid 來發(fā)送就行,沒必要去阻塞gateway進(jìn)程

  • yxon 2022-07-24

    大佬 那我是需要在onmessage綁定成功后再new Worker() 然后創(chuàng)建個(gè)定時(shí)器是嗎

2548a

開自定義進(jìn)程看這里 http://www.wtbis.cn/q/8853
不需要,加定時(shí)器無非是為了隔一段時(shí)間推送一次數(shù)據(jù),定時(shí)器直接在自定義進(jìn)程里的onWorkerStart 里寫
類似這樣
public function onWorkerStart($worker)
{
//假設(shè)隔10秒推送一次數(shù)據(jù)
Timer::add(10,function (){
//獲取綁定的所有uid
$uid_arr = Gateway::getAllUidList(void);
//然后在這里循環(huán)uid_arr,給他們推送對(duì)應(yīng)的數(shù)據(jù)就行了
})

}

  • 暫無評(píng)論
年代過于久遠(yuǎn),無法發(fā)表回答
??