在oracle中创建一张表

主键不是自动增长的
创建jdbc连接工具

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

编写测试类

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


数据库报错
我们接下来用AtomicInteger
代码修改

还是有这样的问题存在,这种问题解决办法很简单,可以加一个类级别的锁,但是我在想,java的很多关键字,加上去反而不能避免这样的问题。很是迷惑
在oracle中创建一张表
主键不是自动增长的
创建jdbc连接工具
为了不让connection收到线程并发影响,使用threadlocal进行线程隔离
编写多线程类
编写测试类
我们发现,多线程情况下读取count变量,会产生线程安全问题
数据库报错
我们接下来用AtomicInteger
代码修改
还是有这样的问题存在,这种问题解决办法很简单,可以加一个类级别的锁,但是我在想,java的很多关键字,加上去反而不能避免这样的问题。很是迷惑
本文标题:2018-02-07 关于多线程方面的案例
本文链接:https://www.haomeiwen.com/subject/ejnozxtx.html
网友评论