文章标题

来源:互联网 发布:程序员面试题目 编辑:程序博客网 时间:2024/06/05 00:15
 就这个锁的位置放在哪比较合适呢,放在循环里面,保证人数都访问这个公共的东西就必须这样; 而判断呢,则放在锁里面,因为要保证修改及判断放在一块,防止出现一个进程正修改或即将但没修改完数据, 而另一个进程却使用没修改过的数据,而判断成功public void run() {    while (true) { // while (ticket > 0) {        synchronized (this) {            if (ticket > 0) { // 这行注释掉                System.out.println(ticket + Thread.currentThread().getName());                list.put(ticket, Thread.currentThread().getName());                ticket--;            } else { //                break; // 这三行也注释掉            } //        }    }}

}

0 0
原创粉丝点击