黑马程序员技术交流社区

标题: 多线程产生的条件和解决的方法是什么? [打印本页]

作者: 穆帆    时间: 2015-9-27 07:39
标题: 多线程产生的条件和解决的方法是什么?
产生的条件:
需要确定以下几个问题:
1.是否是多线程环境
2.是否有共享数据
3.是否有多条语句操作共享数据
解决的方法:

  使用同步解决并发访问的问题:
  
  1.在共享资源上(一般是一些方法)使用关键字:synchronized
  2.作用:当一个线程访问时,其它线程全部列队等待;这种机制保证了这个方法在同一时刻
        只能被一个线程访问;
  3.synchronized语法:
                  1.同步代码块:
                        synchronized(被锁的对象){
                                  //同步代码
                        }
         注:被锁的对象:当一个线程访问此段代码时,会将这个对象中所有的"同步代码块"和"同步方法"加锁,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2