HashMap 中的 Java 线程

标签 java multithreading hashmap

假设我有一个运行重复线程的对象“MyObj”,并且我将该对象放置在 HashMap 中。

如果我删除该对象的条目,这会杀死该线程吗?或者我需要在删除对象之前杀死线程吗?

最佳答案

从 HashMap 中删除对象不会对线程执行任何操作,除非您显式停止它,否则它将继续运行。

来自Java Memory Management

Active Java threads are always considered live objects and are therefore GC roots. This is especially important for thread local variables

对象必须无法访问并且没有 GC 根才能考虑进行 GC。

关于 HashMap 中的 Java 线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24582399/

相关文章:

Python:在另一个线程修改字典时迭代字典

java - 实时匹配记录

data-structures - 在内存中迭代 HashMap 是如何工作的 : Rust

C++ 将 shared_ptr boost 为 hash_map 键

java - 如何仅为特定类配置 log4j2.xml 日志级别?

java - 为什么我们必须使用私有(private)的?在c++和java中?

java - 为什么类不能扩展枚举?

java - 停止请求焦点的 jframe

c++ - 多线程变化需要更长的时间

调用并行模块时 Python 计时代码不正确 - 我的代码或模块?