java - Clojure中的线程局部变量

标签 java multithreading clojure thread-local thread-local-storage

  1. 没有其他原因,只是我编写了许多在 1.1 上运行的其他自定义库。

我需要一种直接的方法来拥有线程局部变量,我见过的很多方法与这个版本的 clojure 不兼容。

在此看到examples

例如 (线程局部(atom 0)))

(def ^{:dynamic true} 计数器)

似乎不适合我

所以我只需要指出正确的方向。

最佳答案

有一个类(class)可以解决这个问题!

user=> (def local (ThreadLocal.))
#'user/local
user=> (.set local 3)
nil
user=> (.get local)
3

关于java - Clojure中的线程局部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21608077/

相关文章:

Java 服务器两小时后停止

java - 如何使用 Java 测试与 Oracle 数据库的连接

java - 线程中的静态同步和非静态同步方法

Clojure BigInt 不是 Java BigInteger

clojure - 如何在 Clojure 中的 try/catch block 中保留状态更新

java - 获取当前时间

java - 从 android 类调用 webservice 时出错

javascript - 共享数据问题

java - 将 JasperReports 中的 NullPointerException 获取到多线程应用程序中

concurrency - 为什么无锁并发如此重要(在 Clojure 中)?