评论者:mpenet
哈,Ghadi,
感谢您的反馈,但我认为您没有正确阅读我的补丁。
我对您提到的(promise)情况没有进行更改,唯一的变化是对于clojure.core.async.impl.dispatch/run被调用的少数情况,即该函数在全局定义的、由core.async中除thread之外的所有内容使用的线程池中运行,它可以**可选地通过一个参数提供的线程池来执行。默认设置未改变,如果不传递执行器,您将获得没有任何更改的核心.async当前行为。
一些人提到需要这个功能,有的公开,有的私下,包括我自己,我还知道有一个团队表达过同样的担忧,他们把他们的一个系统从core.async换成了manifold,因为后者提供了更多的此类控制。
最后这与控制有关,如果不在乎这个,它对core.async及其当前执行模型没有影响,但对于需要这种精细调优的人来说很重要。
几天前在twitter上又提到了这件事情: https://twitter.com/puredanger/status/576378306062262272,也可以在irc日志中找到相关的引用。
如果可能,我会将其作为一个库发布,但涉及的代码有时非常深入,几乎不可能在不修改整个库的情况下实现,因此才有了这个补丁。