版本:Gateway 最新版本
自定義協(xié)議
在 decode 方法中,對(duì)收到的數(shù)據(jù)進(jìn)行解析,在 decode 方法的結(jié)尾處,返回一個(gè)數(shù)組,結(jié)果如:
某些情況下,在 decode 中已經(jīng)解析了數(shù)據(jù),并且 decode 方法也正確的執(zhí)行結(jié)束了,但 onMessage 函數(shù)并沒有收到新數(shù)據(jù)。
可能的原因有哪些?
請(qǐng)問在哪里可以看到錯(cuò)誤信息?包括 gateway 本身錯(cuò)誤信息?
不是數(shù)據(jù)空,而是 decode 方法正確的執(zhí)行結(jié)束后,OnMessage 函數(shù)并沒有被執(zhí)行。OnMessage 函數(shù)第一行就是打印日志,但在某些情況下,一直未被執(zhí)行,有些情況是正常的
2017-05-24 20:41:01 pid:20362 process_timeout:
2017-05-24 20:44:52 pid:20380 process_timeout:
這個(gè)可能是 decode 方法正確的執(zhí)行了,但 OnMessage 方法不被調(diào)用的可能原因?
是的,剛發(fā)現(xiàn)是之前在 OnMessage 調(diào)用的一個(gè)函數(shù)里,有個(gè) sleep(60)的代碼
有沒有 OnMessage 異步處理邏輯的方法?
慢的任務(wù)可以交給其它進(jìn)程去做,避免阻塞主業(yè)務(wù)
比如這個(gè)
http://doc.workerman.net/315283