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

onMessage方法 有時正常 有時沒反應 有時亂碼 隨機產生

l6578117

心血來潮想弄一下workerman 從composer安裝了擴展"workerman/workerman": "^3.5"
在一通瞎雞兒鼓搗之后卡住了?
public function onMessage($connection, $data)

這個方法成功的困擾了我三四天[attach]2309[/attach]
當我點擊按鈕 發(fā)送aaaa的時候??
[attach]2313[/attach]
onMessage()方法會隨機出現三種結果
結果一 沒反應
[attach]2310[/attach]
結果二 正確輸出aaaa
[attach]2312[/attach]
結果三 輸出亂碼
[attach]2314[/attach]
?
反復嘗試了n邊之后找到了規(guī)律
亂碼只會出現在沒有反應之后
就相當于擲硬幣
第一次
? ? 要么沒反應 要么獲取到aaaa
如果是沒反應
? ? 則第二三四。。。次要么是亂碼 要么是沒反應
直到亂碼出現
重新擲硬幣 規(guī)律同上
出現aaaa的概率完全沒有規(guī)則
有時候可以三五遍 有時候一遍都沒有
多次嘗試之后開始動腦子
感覺應該是 沒反應 應該是接收數據沒有結束 在多次點擊發(fā)送aaaa 之后 把幾次的東西結合在了一起 然后 解壓失敗
然后在擴展上有一陣瞎雞兒鼓搗
發(fā)現
源碼里面有這兩個東西 大概意思應該是
緩存區(qū)
$this->_recvBuffer
當前包應該有的長度
$this->_currentPackageLength
里面會判斷
如果緩存區(qū)小于當前包應該有的長度 則等待再次傳入數據?

[attach]2315[/attach]
?
直到緩存區(qū)等于?
?

[attach]2316[/attach]
?
?
或者超過?
?

[attach]2317[/attach]
?
?
當前包應該有的長度 然后觸發(fā)
?

[attach]2318[/attach]

就是這個方法public function onMessage($connection, $data)
?
我遇到的沒反應就是因為緩存區(qū)的長度小于 當前包應該有的長度 導致了 他一直在接收中
而亂碼則是因為 吧兩次或者三次的內容合成了一個去解析
?
因為我傳的內容的固定的都是 aaaa 所以 內容長度是4 加上好像有個頭部長度為6 加起來 就是10
$this->_currentPackageLength

上面這個值就固定是10
?

[attach]2319[/attach]
?
可以看出 _recvBuffer 是接受過來的數據
但是經過輸出他的長度 每次都在變化 有時7 有時6 有時10等
但是我的前端是從百度復制過來的 而且試了好幾個百度的樣稿? 但是都沒有用 接收到的數據的長度還是一直在變化
?
這是前端的代碼

[attach]2320[/attach]
?
我想問 為什么我這個
$this->_recvBuffer
接收到的長度一直在變化 是前端問題 還是后臺寫的不對
?

3437 3 0
3個回答

walkor 打賞

運行
php -i | grep mbstring.func_overload截圖下結果

  • <