脏读

作者: 小爪哇海 | 来源:发表于2018-10-07 18:07 被阅读0次
  /**
 * @Description TODO
 * @Author "zhouhai"
 * @Date2018/10/717:56
 **/
public class DirtyRead {

    private String username = "zhouhai";
    private String password = "123";

    public synchronized void setValue(String username, String password) {
        this.username = username;

        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        this.password = password;

        System.out.println("setValue最终结果:username = "+username+",password="+password);
    }

    public   void getValue() {
        System.out.println("getValue方法得到:username = "+this.username+",password="+this.password);
    }


    public static void main(String[] args) {
        final DirtyRead dr = new DirtyRead();

        Thread t1 = new Thread(new Runnable() {
            @Override
            public void run() {
                dr.setValue("周海", "zhouhai");
            }
        });

        t1.start();

        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        dr.getValue();

    }

}


结果如下:

getValue方法得到:username = 周海,password=123
setValue最终结果:username = 周海,password=zhouhai

可以在getvalue()方法上加同步锁,保持业务与数据的一致性!

相关文章

  • 脏读

    结果如下: getValue方法得到:username = 周海,password=123setValue最终结果...

  • 脏读、不可重复读、幻读区别

    转自https://my.oschina.net/sansom/blog/121712**1. 脏读 **:脏读就...

  • Spring事务级别

    事务级别涉及到到问题主要有脏读,不可重复读,幻读,这里分别描述一下,并对相应的事务级别进行整理。 脏读 :脏读就是...

  • 数据库事务隔离级别

    脏读 不可重复读 幻读

  • 脏读、不可重复读、幻读

    一、脏读、不可重复读、幻读 1、脏读:脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交...

  • Spring 事务隔离级别

    出现问题:脏读 ,不可重复读,幻读 脏读 :读到了别的事务回滚前的脏数据,例如:事务B执行过程中修改了数据X,在未...

  • mysql数据mvcc版本控制原理

    事务并发执行遇到的问题 脏读(未提交读) 不可重复读(已提交读) 幻读(读出新纪录) 事务隔离级别 隔离级别脏读不...

  • 事务隔离级别

    Mysql锁(七)丢失更新,脏读,不可重复读,幻读 ****这些问题的出现的原因**** 之所以出现更新丢失,脏读...

  • SQL事务隔离级别和MySQL事务隔离级别

    RU 隔离级别:Read Uncommitted 读未提交不允许脏写,会发生脏读,不可重复读,幻读。 RC 隔离级...

  • 2.1.5脏读

    实现多个线程调用同一个方法时,为避免数据出现交叉的情况,使用synchronized关键字进行同步 虽然在赋值时进...

网友评论

    本文标题:脏读

    本文链接:https://www.haomeiwen.com/subject/eyolaftx.html