【发布时间】:2015-09-06 02:50:17
【问题描述】:
这是场景:
我有一个 java Hashtable,它以字符串为键,以对象为值。
一个线程通过key获取对象并调用该对象的方法。
当该方法执行步骤 b) 中的某些操作时,另一个线程在引用该对象的特定键上调用 remove。
然后会发生什么?
我应该锁定操作本身吗?
【问题讨论】:
-
请注意,在 Java 中无法“删除”对象;只有垃圾收集器可以做到这一点。如果对对象的所有引用超出范围,则 GC 可以在它认为合适的时候恢复已使用的内存。
标签: java multithreading object hashtable