[英]Number of Processors in Clojure? Java interop
我想使用 Java 方法: Runtime.getRuntime().availableProcessors()
並將結果保存在一個整數變量中。
所以在 Clojure 我做了這個:
(def n-cpu ((.availableProcessors (Runtime/getRuntime)) ))
和這個:
(def n-cpu (Integer/parseInt ((.availableProcessors (Runtime/getRuntime)) )))
但沒有工作。
有什么建議?
如果你用一個整數替換你版本中的方法調用,這就是你邏輯上的:
(def n-cpu (4))
Clojure 無法處理列表(4)
因為非引用列表中的第一項必須是函數。 在這種情況下,第一項是整數,Clojure 不會將整數視為函數。 如果刪除不必要的括號,您的 var 定義將如下所示:
(def n-cpu (.availableProcessors (Runtime/getRuntime)))
請注意,如果用整數替換方法調用,它會變成(def n-cpu 4)
嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.