线程安全
程序员小强
大家好我是程序员小强,相互学习,共同进步
展开
-
Java并发编程知识点
1.并发编程三要素原子性原子是不可再被分割的颗粒,在Java中原子性指的是一个或多个操作要么全部执行成功要么全部执行失败这种完成态就是原子性。有序性程序执行的顺序按照代码的先后顺序执行。可见性当多个线程访问同一个变量时,如果其中一个线程对其作了修改,其他线程能立即获取到最新的值。2. 线程2.1线程与进程 进程是指一个内存中运行的应用程序,每个进程都有自...原创 2019-03-30 17:53:32 · 6396 阅读 · 0 评论 -
AtomicInteger类和int以及i++的线程安全问题
问题:i++是线程安全的吗?这个问题可以从两个方面回答若是局部变量,那么i++是线程安全。若是全局变量,那么i++非线程安全。原因:若是局部变量,那其他线程也访问不到,所以根本不存在是否安全这个问题。若是全局变量,任意线程都可以访问,而i++这个操作是非原子性的,这个会编译成 i = i +1;这里做了多个操作,包括 读取,修改,写入 。并发情况下会出现访问冲突。举个例子: ...原创 2019-03-28 11:19:16 · 9768 阅读 · 0 评论