评论者:mikethompson
@Ghadi
为了明确...你将这称为引号的“问题”。几乎好像它不是一个问题。
但对我来说,这是一个足够真实的“问题”,我必须要么与分支协作,要么完全放弃使用core.async。
我需要(<! (timeout 0))表示0,或者尽可能接近0。我需要它按照宣传的方式工作。当前的实现并没有达到0(或者尽可能接近0),而是提供了与(<! (timeout 4))相同的结果,而与0ms(或者接近0ms)相比,4ms是完全的永久。每次迭代都需要4ms,一个goloop每秒只能迭代250次。
任何有goloop在监听爆发式websocket输出的人都会有这个问题。他们需要疯狂地处理(不延迟4ms),但也要将控制权交还给浏览器,以便浏览器做一些它需要做的事情。当浏览器页面失去“关注”,进入后台,js被限制,动画帧速度减慢等时,所有这些问题都会加剧。