*
我想问这个例子是不是 线程安全? 有点没怎么看懂, 谢谢啦
题目是说 main() 里面创建一个 全球变量
Holder h;
new Thread( h.assertSanity() );
h = new Holder(42);
所以我想题目应该是说,因为 n 不是 final type, 所以有可能后面右边 data race 更改为了 42, 然后导致exception。 个人感觉应该是这样,不过还是希望大神确认下。谢谢
*
我想问这个例子是不是 线程安全? 有点没怎么看懂, 谢谢啦
题目是说 main() 里面创建一个 全球变量
Holder h;
new Thread( h.assertSanity() );
h = new Holder(42);
所以我想题目应该是说,因为 n 不是 final type, 所以有可能后面右边 data race 更改为了 42, 然后导致exception。 个人感觉应该是这样,不过还是希望大神确认下。谢谢
你这个不知道怎么回答,根据表述是继承了Threand 但是下面第二步是通过线程类直接调用的方法,因此没有用到多线程,也就是说没有现成安全不安全一说,多线程调用的应该是run,结论是安全的