欢迎!请查看 关于 页面以了解更多有关如何使用本网站的信息。
为什么 <!! 在 cljs 中没有得到支持?如果没有充分理由,添加对 <!! 的支持不是很好吗?
<!!
core.async 的 <!! 操作是阻塞的,并将阻塞当前线程。在单线程 JavaScript 中,这是不可行的。
您可以使用poll!和offer!代替,它们是非阻塞的等效函数。只需记住,它们不会“等待”值变得可用,因此您需要自己不断轮询,或者确保应该有一个。
就像其他人说的那样,<!!在JavaScript环境中没有意义,因为您永远不希望阻塞主线程,而执行“等待”操作通常需要这样做。
还有一个take!,如果您不想自己实现轮询,它会为您做(更有效),当值可用时会通过回调来调用您。