我正在使用 npm ws 模块(或实际上称为包装器isomorphic-ws
)进行 websocket 连接。
我用它从运行在同一台 PC 上的 websocket++ 服务器接收一些数组数据。然后处理此数据并显示为一系列图表。
现在的问题是处理本身需要很长时间。我使用一条消息来计算 16 个图表,对于每个图表,我需要计算大量对数和其他慢操作以及 JS 中的所有这些。嗯,整个刷新操作大约需要 20 秒。
现在我实际上可以忍受这一点,但问题是当我收到一个新请求时,它会在整个消息处理程序完成后处理。如果我同时收到几个请求,所有的请求都会在它们进来时被处理。所以请求在那里排队,随着时间的推移,当前状态变得越来越过时......
我想有一种方法来检测是否有另一条消息等待处理。如果是这种情况,我可以随时停止当前处理程序并重新开始......所以在使用时npm ws
,有没有办法告诉有另一条消息等待处理?
谢谢