2018-02-07 关于多线程方面的案例

在oracle中创建一张表


2018-02-07 关于多线程方面的案例_第1张图片

主键不是自动增长的

创建jdbc连接工具


2018-02-07 关于多线程方面的案例_第2张图片

为了不让connection收到线程并发影响,使用threadlocal进行线程隔离

编写多线程类


2018-02-07 关于多线程方面的案例_第3张图片

编写测试类


2018-02-07 关于多线程方面的案例_第4张图片

我们发现,多线程情况下读取count变量,会产生线程安全问题


2018-02-07 关于多线程方面的案例_第5张图片


2018-02-07 关于多线程方面的案例_第6张图片

数据库报错

我们接下来用AtomicInteger

代码修改


2018-02-07 关于多线程方面的案例_第7张图片

还是有这样的问题存在,这种问题解决办法很简单,可以加一个类级别的锁,但是我在想,java的很多关键字,加上去反而不能避免这样的问题。很是迷惑

你可能感兴趣的:(2018-02-07 关于多线程方面的案例)