新人,求光顾,我会努力经营!
如有不妥,望大家指点,希望通过每日的文章,向大家学习更多的知识!
想与大家探讨一下线程安全的问题,欢迎大家,各抒己见,这里,都是一样成长的人!望不吝赐教!
那接下来,开始整体,解决线程安全的问题,如下:
1.加锁(synchronized)
这种方法,是为了不共享资源,当一条线程进行访问时,其他线程将不能进行访问,需要等待当前访问线程结束,所以,这也就解决了现成的安全问题,虽然解决了安全问题,但是,由于,是到线程进行访问,所以,也让效率大大的降低了,所以,有利有弊,这种方法,建议在需要线程安全的场合下进行使用!
但是,由于本人个人学习情况,所以只能理解一点点,说的也不好,所以需要大家进行解析,说说个人看法,与想法,这也是我虚心向大家学习的机会!
代码如下:
public class ReGetLock implements Runnable {
@Override
public void run() {
get();
}
public synchronized void get() {
System.out.println(Thread.currentThread().getId());
set();
}
public synchronized void set() {
System.out.println(Thread.currentThread().getId());
}
public static void main(String[] args) {
ReGetLock rgl = new ReGetLock();
new Thread(rgl).start();
}
}