Java并发编程第一章学习

原创 2018年04月15日 16:45:51

单核cpu也可以执行多线程,实现原理:给每个任务分配时间片,系统根据时间片分配算法来执行任务,但是存在上下文切换,即会记住上一次执行线程的一些信息以便于下一次切换回来。

当并发执行累加操作执行不超过百万次时,速度会比串行执行累加操作要慢,因为并发执行存在线程创建和上下文切换。

要解决上下文切换可以采用如下方式;    

                    无锁并发编程

                    CAS算法

                    使用最少线程

                    协程

减少进程中WAITING(等待)状态的线程可以减少上下文切换的次数,因为每次线程状态改变都会进行一次上下文切换。

避免死锁的几个常见方法:

                    避免一个线程同时获取多个锁

                    避免一个线程在锁内同时占用多个资源,尽量保证每个锁只占用一个资源

                    尝试使用定时锁,使用lock.tryLock来替代使用内部锁机制

                    对于数据库锁,加锁和解锁必须在一个数据库连接里,否则会出现解锁失败的情况。

Java核心技术 第一章 接口、继承与多态

-
  • 1970年01月01日 08:00

Java并发编程学习路线图

思维导图如下:
  • csujiangyu
  • csujiangyu
  • 2016-05-18 10:08:31
  • 1021

JAVA 并发编程学习总结

一 相关概念 二 并发级别 三 并行的两个定律 四 线程和进程 线程中断 TODO 待补充 join方法 守护线程 五 内存模型和线程安全 原子性 有序性 可见性 Happens-Before 五种实...
  • Thousa_Ho
  • Thousa_Ho
  • 2017-08-12 21:16:28
  • 294

《Java并发编程实践》笔记1——并发编程基础

1.线程安全定义: 当多个线程访问一个类时,如果不用考虑这些线程在运行时环境下的调度和交替执行,并且不需要额外的同步及在调用方代码不必做其他的协调,这个类的行为仍然是正确的,那么这个类就被称之为是线程...
  • chjttony
  • chjttony
  • 2015-06-23 15:13:13
  • 3834

Java并发编程学习笔记.

  • 2016年08月03日 17:15
  • 1.94MB
  • 下载

龙果java并发编程完整视频

  • 2018年01月18日 21:05
  • 55B
  • 下载

JAVA并发编程学习笔记

JAVA并发编程学习笔记和开发须知。
  • u014653197
  • u014653197
  • 2016-11-28 17:37:45
  • 147

如和学习java并发编程

学习java并发必读
  • a1491758730
  • a1491758730
  • 2017-01-01 12:41:41
  • 236

《java并发编程的艺术》读书笔记

并发编程
  • LQL_King
  • LQL_King
  • 2017-08-13 17:05:35
  • 460

thinking in java学习笔记-第一章

最近开始拜读java编程思想这本书,这本书的经典之处我就不过多宣扬了,在这里我只谈谈我读这本书的感受。 这本书是由Bruce Eckel,这个人也许不熟悉,但是他的作品可是如雷贯耳啊,Bruce E...
  • wtxwd
  • wtxwd
  • 2016-12-20 17:20:01
  • 656
收藏助手
不良信息举报
您举报文章:Java并发编程第一章学习
举报原因:
原因补充:

(最多只允许输入30个字)