不同用户访问公共互斥资源才需要加锁,个人访问个人的资源为什么要加锁?
群友提问:
- 我绝对这个问题主要在锁上面,锁删掉就行了,因为锁的是this
- this代指的是Service这个类,spring默认单例,这样其他用户就会都等在这里,导致不能登陆
- 你登录获取到的user对象和我登陆获取到的user对象本来就是不同对象,所以根本不会有冲突
- 对啊,他的题目就是高并发,假如我们默认此时有1K个用户登陆,假设这个锁执行数据库时间是1秒,那最倒霉那个需要等1000秒才能登陆
- spring访问是独立线程,不同用户user对象独立,数据库中修改是根据id修改的,三个层面都是独立的,不同用户不会冲突
- 这里的this是service这个类的实例(这个实例是在spring容器启动的时候默认创建的单例对象,所以只有一个)
各位同志你们怎么看? 如果同一个用户在不同的浏览器 同一时刻登录? 会出现什么? 出现问题如何解决?
欢迎留言: