Java线程:新特征-条件变量(5)

来源:互联网 发布:mac电话支持已过期 编辑:程序博客网 时间:2024/04/29 17:07

     /**
         * 取款
         *
         * @param x        操作金额
         * @param name 操作人
         */

        public void drawing(int x, String name) {
                lock.lock();                                 //获取锁
                try {
                        if (cash - x < 0) {
                                _draw.await();             //阻塞取款操作
                        } else {
                                cash -= x;                     //取款
                                System.out.println(name + "取款" + x + ",当前余额为" + cash);
                        }
                        _save.signalAll();             //唤醒所有存款操作
                } catch (InterruptedException e) {
                        e.printStackTrace();
                } finally {
                        lock.unlock();                     //释放锁
                }
        }
}

原创粉丝点击