java - 使用 finalize 作为独占锁

标签 java multithreading concurrency garbage-collection mark-and-sweep

如果我使用 stop-the-world GC 并在我的 finalize() 方法中做一些事情,我可以假设所有线程都被挂起并且我可以做任何我想做的事情并且没有线程敢这样做除了GC线程和我争资源?

最佳答案

不,实际上甚至可能有多个终结器线程并发运行。

来自java language spec , "终结器可以按任何顺序调用,甚至可以同时调用。"

关于java - 使用 finalize 作为独占锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6714778/

相关文章:

python - 有没有办法在 Tkinter 中暂停和恢复线程?

c - 在使用 fork() 创建的 C 中,将值从子进程返回到其父进程

concurrency - 接收目标列表作为输入的元谓词

java - Java中的内存防护有什么用?

java - 如何使用 Spark Streaming Java API 将 Twitter 推文写入 HDFS

java - 使用 spring MultipartFile 和 google app engine 上传文件

java - 允许用户选择 JList 上的多个项目

java - 使用 KeyListeners 更好地进行 JLabel 移动

java - 结果集和语句未在 Java 中关闭的影响

java - 从后台线程更均匀地分散负载