osully 发表于 2014-4-3 09:15
你又没加锁 当然了...
这就是多线程操作同一资源 出现的安全问题
你别说2个一样 5个6个一样都可能出现 ...
闲人 发表于 2014-4-3 09:20
因为没有加锁,所以多线程同步的时候,
当两个线程同时进去,读取到不同的ticket然后输出, ...
H-Deka 发表于 2014-4-3 09:22if (ticket>0) System.out.println(Thread.currentThread().getName()+"卖出第"+(ticket--)+"张门 ...
2528870651 发表于 2014-4-3 10:26
不好意思后面的内容没有复制上,我不是问没有加锁会有什么问题,而是想问为什么前后2个ticket会相同, 前 ...
2528870651 发表于 2014-4-3 10:24
不好意思后面的内容没有复制上,我不是问没有加锁会有什么问题,而是想问为什么前后2个ticket会相同, 前 ...
闲人 发表于 2014-4-3 10:29
程序是从前到后执行的,你ticket--执行完以后,就把ticket--赋值给了ticket,当然ticket就会和ticket--是 ...
闲人 发表于 2014-4-3 10:29
程序是从前到后执行的,你ticket--执行完以后,就把ticket--赋值给了ticket,当然ticket就会和ticket--是 ...
osully 发表于 2014-4-3 11:25
不同步,也就是说
线程1刚拿到ticket 还没来得及-- 就失去了cpu执行权
线程2就拿到了ticket ,所以就出现了 ...
osully 发表于 2014-4-3 11:42
我做事为什么要等你做完????
Engle 发表于 2014-4-3 11:58
多线程同步问题:
在多线程环境中,可能会有两个甚至更多的线程试图同时
访问一个有限的资源。必须 ...
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |