并发编程 知识点

1. Executor框架

2. Fork/join

3. happen-before

4. 数据结构

- ConcurrentHashMap
- ConcurrentLinkedQueue

5. 线程池

- 参数设置
- 原理
- 拒绝策略

6. 线程状态

7. Lock/synchronized

8. 原子操作类

9. 并发工具类

- CountDownLatch
- Semaphore
- CuclicBarrier
- Exchanger

时间: 2024-10-12 10:34:28

并发编程 知识点的相关文章

Java多线程、并发编程知识点小结

1.线程的状态    1.1创建 线程 的两种方式,接口和线程类.利用接口的好处:更好的体现面向对象的思想,可以避免由于Java的单继承特性而带来的局限: 增强程序的健壮性,代码能够被多个线程共享,代码与数据是独立的:(同步问题)适合多个相同程序代码的线程区处理同一资源的情况.    1.2线程就绪等待调度运行start()方法. 1.3线程的中断 这里需要注意的是,如果只是单纯的调用interrupt()方法,线程并没有实际被中断,会继续往下执行. 1.4.线程挂起和恢复(挂起还拥有对象锁,死

python并发编程知识点总结

1.到底什么是线程?什么是进程? Python自己没有这玩意,Python中调用的操作系统的线程和进程. 2.Python多线程情况下: 计算密集型操作:效率低,Python内置的一个全局解释器锁,锁的作用就是保证同一时刻一个进程中只有一个线程可以被cpu调度,多线程无法利用多核优势,可以通过多进程方式解决,但是比较浪费资源. IO操作:效率高 3.Python多进程的情况下: 计算密集型操作:效率高(浪费资源),不得已而为之. IO操作:效率高(浪费资源) 4.为什么有这把GIL锁? Pyth

干货:Java并发编程必懂知识点解析

本文大纲 并发编程三要素 原子性 原子,即一个不可再被分割的颗粒.在Java中原子性指的是一个或多个操作要么全部执行成功要么全部执行失败. 有序性 程序执行的顺序按照代码的先后顺序执行.(处理器可能会对指令进行重排序) 可见性 当多个线程访问同一个变量时,如果其中一个线程对其作了修改,其他线程能立即获取到最新的值. 2. 线程的五大状态 创建状态 当用 new 操作符创建一个线程的时候 就绪状态 调用 start 方法,处于就绪状态的线程并不一定马上就会执行 run 方法,还需要等待CPU的调度

干货:Java并发编程必懂知识点解析(内附面试题)

本文大纲 1.并发编程三要素 原子性 原子,即一个不可再被分割的颗粒.在Java中原子性指的是一个或多个操作要么全部执行成功要么全部执行失败. 有序性 程序执行的顺序按照代码的先后顺序执行.(处理器可能会对指令进行重排序) 可见性 当多个线程访问同一个变量时,如果其中一个线程对其作了修改,其他线程能立即获取到最新的值. 2. 线程的五大状态 创建状态 当用 new 操作符创建一个线程的时候 就绪状态 调用 start 方法,处于就绪状态的线程并不一定马上就会执行 run 方法,还需要等待CPU的

并发编程重要知识点

1.并发编程三要素 原子性 原子,即一个不可再被分割的颗粒.在Java中原子性指的是一个或多个操作要么全部执行成功要么全部执行失败. 有序性 程序执行的顺序按照代码的先后顺序执行.(处理器可能会对指令进行重排序) 可见性 当多个线程访问同一个变量时,如果其中一个线程对其作了修改,其他线程能立即获取到最新的值. 2. 线程的五大状态 创建状态 当用 new 操作符创建一个线程的时候 就绪状态 调用 start 方法,处于就绪状态的线程并不一定马上就会执行 run 方法,还需要等待CPU的调度 运行

Java 面试知识点解析(二)——高并发编程篇

前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大部分内容参照自这一篇文章,有一些自己补充的,也算是重新学习一下 Java 吧. 前序文章链接: Java 面试知识点解析(一)--基础知识篇 (一)高并发编程基础知识 这里涉及到一些基础的概念,我重新捧起了一下<实战 Java 高并发程序设计>这一本书,感觉到心潮澎湃,这或许就是笔者叙述功底扎实的

JAVA并发编程J.U.C学习总结

前言 学习了一段时间J.U.C,打算做个小结,个人感觉总结还是非常重要,要不然总感觉知识点零零散散的. 有错误也欢迎指正,大家共同进步: 另外,转载请注明链接,写篇文章不容易啊,http://www.cnblogs.com/chenpi/p/5614290.html 本文目录如下,基本上涵盖了J.U.C的主要内容: JSR 166及J.U.C Executor框架(线程池. Callable .Future) AbstractQueuedSynchronizer(AQS框架) Locks & C

并发编程学习记录

重要知识点 现代系统基本的构造并发程序的方法 进程:用这个方法,每个逻辑流都是一个进程,由内核来调度和维护.因为进程有独立的虚拟地址空间,想要和其他流通信,控制流必须使用某种显式的进程间通信机制. I/O多路复用:在这种形式的并发编程中,应用程序在一个进程的上下文中显示地调度它们自己的逻辑流.逻辑流被模型化为状态机,数据到达文件描述符后,主程序显示地从一个状态转化到另一个状态.因为程序是一个单独的进程,所以所用流共享同一个地址空间. 线程:线程是运行在一个单一进程上下文中的逻辑流,由内核进行调度

多线程并发编程

前言 多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学习之旅吧. 正文 线程与进程 1 线程:进程中负责程序执行的执行单元线程本身依靠程序进行运行线程是程序中的顺序控制流,只能使用分配给程序的资源和环境 2 进程:执行中的程序一个进程至少包含一个线程 3 单线程:程序中只存在一个线程,实际上主方法就是一个主线程 4 多线程:在一个程序中运行多个任务目的是更好地使用CPU资源 线程的实现 继承Thread类 在j