立即注册 登录
About云-梭伦科技 返回首页

云溪流的个人空间 https://aboutyun.com/?61308 [收藏] [复制] [分享] [RSS]

日志

java 锁学习

已有 521 次阅读2017-6-15 12:48 | java, java

听过很多词,并发、同步、多线程等
同步,则保证数据在同一时间只能被一个线程访问,该线程使用完后,再将修改后的数据给下一个线程。保证数据的完整性。那么为了保证一个时间只能被一个访问,就需要给数据或者方法上锁,java中使用的锁的两个基本工具是synchronized和lock。再并发量比较小的情况下,使用synchronized,在并发量比较高的情况下,使用ReentrantLock.
在这里穿插讲解一下reentrant,这个修饰符用于把函数定义为可重入函数。所谓可重入函数就是允许被递归调用的函数。
synchronized的使用方法:  1. public synchornized void methodName()  //锁方法
                                           2. public void method(){
                                                         synchornized(obj){//锁住代码块
                                                          }}
思考一:python的同步锁是什么?其他语言的同步锁是什么?
思考二:允许某些特定的访问,比方家里的浴室是一个人去洗,但是公共澡堂,女的都可以进女澡堂,但是男的不行。女的橱柜满后,就不允许进入。
思考三:wait()、notify()、notifyAll()

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册

关闭

推荐上一条 /2 下一条