A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

在方法前加synchronized关键字,是为了同步。但是不理解。有没有人告诉一下,为什么要同步。。。不同步会有什么影响?

4 个回复

倒序浏览
多线程里的问题。同步的好处:解决多线程的安全问题。同行的弊端:降低了程序的性能。
如果不同步:例如,CPU在执行线程时,是一个时间段一个时间段的执行的。当一个线程在执行到一半的时候,突然转到另一个线程。而两个线程处理着相同的变量。这时,出现问题。
回复 使用道具 举报
不同步就会出现线程安全问题。比如两个线程A和B,A进入某个方法获得执行权,但是还没有执行,这时候B线程进来瞬间抢占了执行权并执行了程序。这样两个线程就把本该执行一次的程序一人执行了一次,那同一次执行就会有两个结果。同步就是防止这样的情况出现。当然我说的比较通俗了,比较专业的说法还是要好好看看视频。
回复 使用道具 举报
多线程不同程就有可能不安全啊
回复 使用道具 举报
去看老毕的视频吧,day11
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马