我正在构建一个具有 ThreadLocal 作为实例变量的单例,这个单例有一个可以被多个线程访问的方法,并且它是延迟实例化的。现在我正在考虑这样的事情:
static final ThreadLocal<HashMap> bindingContext = new ThreadLocal<HashMap>();
但是我不确定这是否是一个好主意,我也可以选择将其设为实例变量,因为我正在使用它(正如我在单例中所说的那样)。
所以问题是,初始化该类变量的最佳位置在哪里,或者它应该是一个类变量?