`
saint13
  • 浏览: 39898 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

如何获得排他锁?

 
阅读更多
Session sess=HiberanteUtil.getSession();
Transaction tx=sess.beginTransaction();
User user=sess.get(User.class,id,LockMode.UPGRADE);
user.set...                                  //3
...

调试的时候发现两个线程都能执行到第3行代码(即他们读到了相同的那条记录了)?
这是为什么,请大家指点啊.
分享到:
评论
1 楼 saint13 2007-04-23  
还有,如何锁定整张表,谢谢?

相关推荐

    sql server 数据库 无法获得数据库'model'上的排他锁 解决办法

    sql server 数据库新建数据库时出现异常 无法获得数据库'model'上的排他锁 这是解决办法

    委托+事件+多线程+排他锁的c#例子

    排他锁(Mutex)则用于线程同步,确保对共享资源的互斥访问。王杨可能是这个示例代码的作者或讲解者。下面将详细阐述这些概念及其在C#中的应用。 首先,**委托**是C#中的一个类型,它代表方法的引用。委托可以被...

    MySQL8.0锁机制和事务

    共享锁(S)允许拥有共享锁的事务读取该行数据,而排他锁(X)允许拥有排他锁的事务修改或删除该行数据。此外,InnoDB 存储引擎还支持意图锁,意图锁是表级锁,表明事务在后期会对该表的行施加共享锁或者排他锁。...

    Oracle 锁机制问题详解

    在指定记录上请求排他锁的第一个会话会得到这个锁定,其他请求对该记录进行写访问的会话则必须等待。这些锁定在事务被提交或回滚后自动释放。 - **排他锁**:一次只能有一个会话获得对一条记录或一个完整表的排他锁...

    DB2锁相关情况介绍

    5. **更新(U)**:表示事务将要更新数据,但尚未获得排他锁。 6. **排他(X)**:表示事务正在更新数据,不允许其他事务读取或更新同一数据。 7. **超级排他(Z)**:用于DDL操作,阻止所有其他类型的锁。 #### 四...

    SQL的锁机制

    - **共享意图排他锁 (SIX)**:表示事务已获得共享锁,并打算进一步升级为排他锁。 ##### 2. 锁的层次结构 锁可以作用于不同的层次,如页级锁、表级锁等。 - **表级锁**:整个表被锁定,效率低但能防止所有并发...

    oracle锁的概念

    一旦某个用户获得了排他锁,其他用户将无法对该表执行任何操作,包括查询。 - **共享行排他锁(Share Row Exclusive, SRX)**:这是一种介于共享锁和排他锁之间的锁类型,它可以防止其他事务在表上应用共享锁或排他锁...

    sybase锁、索引等介绍

    一旦某个事务获得了排他锁,其他事务就不能对该资源执行任何读或写操作,直到该排他锁被释放。 **示例应用场景**:在更新一份合同条款时,为了防止其他人同时进行修改导致数据冲突,可以对该条款加排他锁。 ##### ...

    SQL server锁的机制

    例如,意图共享锁(Intent Share Locks,IS)表示事务计划在表上设置共享锁,意图排他锁(Intent Exclusive Locks,IX)表示计划在表上设置排他锁。意图锁的引入降低了锁检查的成本,因为它允许事务快速确定它们是否...

    Oracle锁表问题的简捷处理技巧

    - 在执行`INSERT`、`UPDATE`或`DELETE`操作时,默认会获得行排他锁(`Row-X`),这意味着在提交之前任何其他事务都不能修改该行的数据。 4. **创建索引时的共享锁**: - 创建索引时会自动获取共享锁(`Share`)。如果...

    MySQL锁详细介绍

    一个事务先读取数据,获得共享锁,然后试图更新数据,这时需要将锁升级为排他锁。更新锁一次只允许一个事务持有,如果事务不修改数据,则会转换为共享锁。 4. **意向锁**:用于表示事务对底层资源获取共享或排他锁...

    InnoDB的七种锁

    - **意向排他锁**(IX)表示事务希望在未来某个时刻获取一个或多个排他锁。 **作用**:意向锁帮助系统确定哪些事务正在等待获取锁,以及它们期望获取哪种类型的锁。 #### 插入意向锁(Insert Intention Locks) *...

    关于数据库的锁

    T1在执行更新操作之前,首先获取排他锁,这样T2就无法在同一时间获取排他锁,从而保证了数据的一致性。 #### 四、锁的应用场景 - **共享锁**适用于多读少写的情况,允许多个事务同时读取数据,但不允许写操作。 -...

    JAVA中锁概及运用.doc

    * 排他锁:排他锁使一个事务单独获得此资源,另一事务不能在此事务提交之前获得相同对象的共享锁或排他锁。 锁的应用 锁的应用非常广泛,在 Java 编程中,锁是非常重要的概念。锁可以用来控制对共享资源的访问,...

    oracle数据库中的锁机制

    它主要分为两大类:共享锁(Share Locks)和排他锁(Exclusive Locks)。共享锁允许多个用户读取数据,但不允许任何用户修改数据;而排他锁则阻止其他用户读取或修改数据,仅允许持有锁的用户进行修改操作。 #### ...

    oracle锁表查询

    1. **行级锁**:当事务执行更新操作时,它会自动获得该行上的排他锁(X锁)。 2. **表级锁**:用于锁定整个表,这种类型的锁通常由数据库管理系统自动管理。 3. **共享锁**(S锁):允许多个事务读取一行数据,但...

    SQL文排他设计(日文)

    3. **不可重复读**:在一个事务执行过程中,如果另一个事务对某些数据进行了修改并提交,那么前一个事务再次读取这些数据时,得到的结果与之前不同,这称为不可重复读。 ### 排他制控实现方法 排他制控可以采用...

    database management system

    排他锁则完全相反,当一个事务获取了某个数据项的排他锁时,其他事务既不能读取也不能修改该数据项,直到排他锁被释放。排他锁主要用于写操作,因为写操作可能改变数据状态,从而影响其他事务。 ### 并发控制与串行...

    Zookeeper 分布式重入排它锁实现

    **分布式重入排他锁(Reentrant Lock)在Zookeeper中的实现** Zookeeper是一个开源的分布式协调服务,常用于分布式环境中的一致性问题,如配置管理、命名服务、分布式同步等。在分布式系统中,为了保证数据的一致性...

    Java锁的种类以及区别

    独享锁也称为排他锁,指的是在某个时间段内只允许一个线程获取锁,这意味着如果当前线程获得了锁,则其他线程必须等待直到该线程释放锁。 **2. 共享锁** 共享锁允许多个线程同时获取锁,只要它们对共享资源的操作是...

Global site tag (gtag.js) - Google Analytics