目录

并发(Concurrent)

并行(Parallel)

并发vs并行

垃圾回收的并发与并行


并发(Concurrent)

1.在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理器上运行。

2.并发不是真正意义上的“同时进行”,只是CPU把一个时间段划分成几个时间片段(时间区间),然后在这几个时间区间之间来回切换,由于CPU 处理的速度非常快,只要时间间隔处理得当,即可让用户感觉是多个应用程序同时在进行。

并行(Parallel)

1.当系统有一个以上CPU时,当一个CPU执行一个进程时,另一个CPU可以执行另一个进程,两个进程互不抢占CPU资源,可以同时进行,我们称之为并行(Parallel)。

2.其实决定并行的因素不是CPU的数量,而是CPU的核心数量,比如一个CPU多个核也可以并行。

3.适合科学计算,后台处理等弱交互场景。

并发vs并行

并发,指的是多个事情,在同一时间段内同时发生了。

并行,指的是多个事情,在同一时间点上同时发生了。

并发的多个任务之间是互相抢占资源的。

并行的多个任务之间是不互相抢占资源的。

只有在多CPU或者一个CPU多核的情况中,才会发生并行。

否则,看似同时发生的事情,其实都是并发执行的。

垃圾回收的并发与并行

并发和并行,在谈论垃圾收集器的上下文语境中,它们可以解释如下:

· 并行(Parallel)指多条垃圾收集线程并行工作,但此时用户线程仍处于等待状态。

如ParNew、Parallel Scavenge、Parallel Old;

· 串行(Serial)

相较于并行的概念,单线程执行。

如果内存不够,则程序暂停,启动JVM垃圾回收器进行垃圾回收。回收完在启动程序的线程。

· 并发(Concurrent):指用户线程与垃圾收集线程同时执行(但不一定是并行的,可能会交替执行),垃圾回收线程在执行时不会停顿用户程序的运行。

用户程序在继续运行,而垃圾收集程序线程运行于另一个CPU上;

如:CMS、G1。

java-垃圾回收的并行与并发相关推荐

  1. JVM学习笔记之-垃圾回收相关概念 System.gc()的理解 内存溢出与内存泄漏 STW 垃圾回收的并行与并发 安全点与安全区域 再谈引用:强引用 软引用 弱引用 虚引用 终结器引用

    System.gc()的理解 在默认情况下,通过System.gc()或者Runtime. getRuntime ( ).gc ()的调用,会显式触发Full GC,同时对老年代和新生代进行回收,尝试 ...

  2. 假期三天,我肝了万字的Java垃圾回收,看完你还敢说不会?

    大家好,我是狂聊,上一篇已经把 Jvm 的运行区数据和类加载机制聊完了. 今天来说说 Java 垃圾回收,高频面试问题. 提纲附上,话不多说,直接干货 1.什么是垃圾回收? 垃圾回收(Garbage ...

  3. 细述 Java垃圾回收机制→Types of Java Garbage Collectors

    本文将会介绍各种不同类型的Java垃圾回收器.垃圾回收是Java用来将程序员从分配和释放内存的琐事中解放出来的自动过程. Java有四种类型的垃圾回收器, Serial Garbage Collect ...

  4. Java垃圾回收机制(Garbage Collection)

    引用博客地址:http://www.cnblogs.com/ywl925/p/3925637.html 以下两篇博客综合描述Java垃圾回收机制 第一篇:说的比较多,但是不详细 http://www. ...

  5. java垃圾回收机制串行_Java垃圾回收机制

    Java语言是一门自动内存管理的语言,不再需要的对象可以通过垃圾回收自动进行内存释放. Java运行时内存区域划分 JVM将Java程序运行时内存区域划分成以下几个部分: 程序计数器(Program ...

  6. java垃圾回收机制_JVM的垃圾回收机制——垃圾回收算法

    一.Java垃圾回收机制 在java中,程序员是不需要显示的去释放一个对象的内存的,而是由虚拟机自行执行.在JVM中,有一个垃圾回收线程,它是低优先级的,在正常情况下是不会执行的,只有在虚拟机空闲或者 ...

  7. Java垃圾回收(GC)机制详解

    Java垃圾回收(GC)机制详解 转自:https://www.cnblogs.com/xiaoxi/p/6486852.html 一.为什么需要垃圾回收 如果不进行垃圾回收,内存迟早都会被消耗空,因 ...

  8. 36.JVM内存分哪几个区,每个区的作用是什么、如和判断一个对象是否存活、java垃圾回收机制、垃圾收集的方法有哪些、java类加载过程、类加载机制、双亲委派、Minor GC和Major GC

    36.JVM内存分哪几个区,每个区的作用是什么? 37.如和判断一个对象是否存活?(或者GC对象的判定方法) 38.简述java垃圾回收机制? 39.java中垃圾收集的方法有哪些? 40.java类 ...

  9. 深入理解 Java 垃圾回收机制

    转载自 http://www.cnblogs.com/andy-zcx/p/5522836.html 深入理解 Java 垃圾回收机制 一:垃圾回收机制的意义 java  语言中一个显著的特点就是引入 ...

  10. java不同垃圾回收器_细述 Java垃圾回收机制→Types of Java Garbage Collectors

    本文非原创,翻译自Types of Java Garbage Collectors 在Java中为对象分配和释放内存空间都是由垃圾回收线程自动执行完成的.和C语言不一样的是Java程序员不需要手动写垃 ...

最新文章

  1. SQL判断是否存在,还在用 count 操作?试试这条 SQL 语句,性能杠杠的!
  2. 指令集及流水线基本概念
  3. IntelliJ Idea 常用插件
  4. HDU 3435 KM A new Graph Game
  5. 快捷配置mysql_windows下的mysql的快捷安装方法和简单配置
  6. PHP利用memcache缓存技术提高响应速度
  7. Java快捷键(学到会慢慢更新)
  8. JAVA idea中安装P3C方法和使用指南
  9. pthread_attr_setinheritsched,pthread_attr_setschedparam函数详解
  10. 新能源与材料如何应用计算机,计算机模拟在光电材料及太阳能工程领域的应用与新进展.doc...
  11. 毕业一年后,我为什么选择去香港做IT?
  12. SQL2008使用with求余额表,流水账方式
  13. delphi向控件发送消息,全选、复制、黏贴,sendmessage
  14. vlc在C#的使用方法
  15. Spring系列学习之Spring Integration
  16. 微信支付服务器软件怎么添加呢,微信APP如何把微信支付添加到手机桌面
  17. Spring | 三分钟带你了解什么是Spring
  18. python计算火车的运行时间_python+pandas处理火车换乘数据
  19. 最新版!泛955、不加班、双休的公司名单
  20. 安卓c语言自动补全软件吾爱,C语言实现贪吃蛇小游戏

热门文章

  1. 你对Java网络编程了解的如何?Java BIO 网络编程 | Netty 前期知识
  2. win7安装python2.7_python学习(3)-win7安装python2.7
  3. 移动端html游戏开发,GitHub - PromeYang/GameBuilder: GameBuilder 是移动端轻量HTML5游戏快速开发框架,主要应用于活动推广。...
  4. linux与shell编程指南,LINUX与UNIX SHELL编程指南
  5. 扭矩大好还是马力大好_发动机的马力重要还是扭矩重要?加速到底看哪个?
  6. linux选择最短路径sdn,基于网络流量的SDN最短路径转发应用
  7. 索泰显卡超频软件测试要多少时间,显卡超频测试_索泰 GTX 760 2GD5 至尊OC+_显卡评测-中关村在线...
  8. java登录失败重新登录_为什么我的一直都是进入登录失败界面
  9. python sslerror_python3中SSLError错误处理
  10. 一种新的url定向技术-使用@与/?