指令重排序问题,求大神解答

leijake 2017-08-16 08:38:23
1、long start =System.currentTimeMillis();

long end=System.currentTimeMillis();

start和end没有关联关系,出现重排序,处理器中end先于start执行
最后会不会出现end早于start的结果

2、一个线程里
void test(){
a();-------------->数据库查询表A
b();-------------->数据库修改表B
}
原逻辑是A查询出现异常程序就结束了。现在出现重排序,B方法先执行了(表B修改了),然后才执行A方法出现异常程序结束
这样是不是异常结束前就会出现两种结果:1、表B修改了 2、表B没修改
...全文
189 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧