gRPC nodejs踩坑

用nodejs寫的gRPC流式服務端,在循環體外部創建了proto消息體,在循環內部set值,並write回客戶端,結果客戶端收到的每個包內容都相同。

看到這結果,也能猜到個大概了,必定和node的異步機制有關,循環結束後才真正調用之前的write函數,導致每次發送的都是最終的proto消息。

想起node閉包的一個禁忌:不要在閉包中使用外部的循環變量或後續會發生變化的變量

發佈了54 篇原創文章 · 獲贊 11 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章