一直没有弄明白的多线程和线程安全问题?
各位,
我看了很多线程安全的文章,目前还是对其模模糊糊!比如一个简单的例子
public static int testMethod(int i){
if(i==0) return 0;
int result =1;
for(int x=1;x <=i;x++){
result*=x;
}
return result;
}
这种是现成安全的吗,为什么?
会不会两个线程使用同一个变相result呢?
------解决方案--------------------线程安全又叫线程同步是由于同时要使用一个资源而产生的.
我觉得这个方法不存在线程安全不安全.
------解决方案--------------------这个是安全的,因为result是局部变量,两个线程不会同时用的!如果把result提到class级别就是不安全的!
------解决方案--------------------同意!
------解决方案--------------------the thread is safe