簡體   English   中英

Clojure 中的處理器數量? Java互操作

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM