有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

并发java:为什么不允许它转义构造函数?

在JCIP的第3.2.1节“安全构造函数实践”中,有一条警告,“即使发布是构造函数中的最后一条语句”,也不要将this泄漏到构造函数的另一个线程这最后一部分对我来说似乎太强了,而且没有任何理由。施工后发生了什么我必须小心避免的事情?有例外吗?我很感兴趣,因为我最近提交了一些代码,在其中我做了这件事,我想决定是否有理由回去进行重构


共 (1) 个答案

  1. # 1 楼答案

    在任何时候都不应该从构造函数中泄漏this,“甚至[…]在最后的声明中。“由于this不是完全构造的,所以可能会发生一些非常奇怪的事情。关于一个非常类似的问题,请参见this SO answer。”