core.async clojure库中的线程池implementation使用大小=#的核心* 2 + 42的FixedThreadPoolExecutor。
(defonce the-executor
(Executors/newFixedThreadPool
(-> (Runtime/getRuntime)
(.availableProcessors)
(* 2)
(+ 42))
(conc/counted-thread-factory "async-dispatch-%d" true)))
是否有理由使用这些数字(核心数乘以2加42)?这对所有设备都是最佳的吗?我只是想知道丰富的hickey(和贡献者)如何用这些数字来解决。
谢谢你nullptr。
以下是对有兴趣的人的讨论: http://clojure-log.n01se.net/date/2013-08-29.html#15:45a
答案 0 :(得分:2)
在下面的链接中进行了一些讨论,但它基本上是任意的。
https://groups.google.com/d/msg/clojure/mT-r3EDeC74/dvaFqHnAZxgJ