java - 是否可以从不同的类访问一个java变量,但对不同的线程不可见?

标签 java java-threads

据我了解,静态变量在 JAVA 中的所有线程中都是可见/可访问的。

有没有办法定义一个只能由其线程内的类访问的变量?

最佳答案

如果我正确理解你的意图,那么是的,可以通过ThreadLocal:https://docs.oracle.com/javase/8/docs/api/java/lang/ThreadLocal.html

This class provides thread-local variables. These variables differ from their normal counterparts in that each thread that accesses one (via its get or set method) has its own, independently initialized copy of the variable. ThreadLocal instances are typically private static fields in classes that wish to associate state with a thread (e.g., a user ID or Transaction ID).

关于java - 是否可以从不同的类访问一个java变量,但对不同的线程不可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47221728/

相关文章:

java - 形式与实际,如何辨别?

java - Android:使用类时代码滞后

java - 如果启动了较新的实例,则终止程序的较旧实例

java - 具有共享整数对象的线程未按预期工作

java - 如果正在调试代码,您可以在 Java 中检测到吗?

java - STS 中没有 Maven 的 Spring Boot 项目

java - 在 JAVA 中解析 XML 时出现 GWT 编译错误

javascript - jsp : Could I change the order of render/execution

java - wait 方法唤醒而不调用 notify(NOT SPURIOUS WAKEUP)

java - 如何在不访问对象的情况下检查Java应用程序中的线程是否处于 Activity 状态?