concurrency

课程大纲

并发一直是开发人员面临的挑战,编写并发程序可能非常困难。 引入并发性时,可能会发生很多事情,并且系统的复杂性会大大增加。

但是,编写健壮的并发程序的能力是开发人员的必备工具,并且可以帮助构建复杂的企业级应用程序。

在本课程中,您将深入探讨并发的魔力。 将向您介绍并发和并发代码的基础知识,并学习诸如原子性,同步和线程安全性的概念。

在继续学习时,以下课程将介绍您可以利用的工具,例如Fork / Join框架,java.util.concurrent JDK包。 总结一下,您将学习测试并发应用程序。

关于作者

Martin是一位软件工程师,在软件开发方面拥有超过10年的经验。他目前的兴趣包括Java EE,专注于HTML5的Web应用程序和性能优化。 目前,Martin在Java EE领域的一家国际运营公司工作,并对他在大型大数据系统的日常工作中感到担忧。

经验教训

在本课程的第一课中,您将被介绍到神奇的并发世界。 您将了解线程以及如何创建,启动它们,使它们进入睡眠状态等等。 此外,您将首先了解同步以及对变量的原子访问。 每个示例都提供了示例代码。

在本课程中,您将学习并发应用程序的重要方面,例如活动性和多线程。 您将学习如何避免并行编程的常见陷阱,例如死锁,线程饥饿等。此外,您还将了解代码同步以及如何实现。 最后,将研究编写多线程代码的设计策略。

在本课中,我们将重点讨论java.util.concurrent包,其中包括许多有趣的类,这些类提供了实现多线程应用程序所需的必要和有用的功能。 我们将看到如何使用相关的API类,例如执行程序,并发集合,原子变量等。

在本课程中,我们讨论多线程应用程序的性能主题。 在定义性能和可伸缩性这两个术语之后,我们将仔细研究阿姆达尔定律。 在本课程的进一步内容中,我们将看到如何通过应用不同的技术来减少锁争用,如代码示例所示。

在本课程中,我们将讨论Fork / Join框架,该框架从1.7版开始就是JDK的一部分。 该框架提供了一组非常方便的类,可用于根据相关算法编写并发应用程序。 我们将探索主要类,并提供有关如何使用它们的示例。

在最后的课程中,我们将讨论多线程应用程序的测试。 我们实现一个简单的阻塞队列,并测试其阻塞行为以及在压力测试条件下的行为和性能。 最后,我们阐明了用于多线程类的单元测试的可用框架(例如JMock,Grobo Utils等)。

请确保转发此消息,让您的社交粉丝知道!

#Java Concurrency Essentials教程-免费超级课程http://t.co/a6estpEWOm pic.twitter.com/NYbZK6xvkt

— Java Code Geeks(@javacodegeeks) ,2015年10月17日

翻译自: https://www.javacodegeeks.com/2015/09/java-concurrency-essentials.html

concurrency

concurrency_Java Concurrency Essentials教程相关推荐

  1. Java Concurrency Essentials教程

    课程大纲 并发一直是开发人员面临的挑战,编写并发程序可能非常困难. 引入并发性时,可能会发生很多事情,并且系统的复杂性会大大增加. 但是,编写健壮的并发程序的能力是开发人员的必备工具,并且可以帮助构建 ...

  2. Xamarin Essentials教程磁力计Magnetometer

    Xamarin Essentials教程磁力计Magnetometer 磁力计也叫地磁.磁感器,可用于测试磁场强度和方向.在手持设备中,通过磁力计可以计算设备的左右.前后倾斜角度,广泛应用于手机各种的 ...

  3. Xamarin Essentials教程打开文件

    Xamarin Essentials教程打开文件 FileSystem类的OpenAppPackageFileAsync()方法可以用来打开App包中特定的文件,其语法形式如下: public sta ...

  4. Xamarin Essentials教程获取路径文件系统FileSystem

    Xamarin Essentials教程获取路径文件系统FileSystem 文件系统用于管理设备内的各类文件.通过文件系统,应用程序可以创建永久文件和临时文件,也可以获取预先打包的文件,如预设数据库 ...

  5. Xamarin Essentials教程实现数据的传输功能实例

    Xamarin Essentials教程实现数据的传输功能实例 [示例1-1]以下将实现数据的传输功能.代码如下: public async Task ShareUri(string text, st ...

  6. Xamarin Essentials教程构建共享请求

    Xamarin Essentials教程构建共享请求 共享请求类ShareTextRequest可以用于构建复杂形式的数据,用于向其他应用传输.例如,它可以指定共享内容的主题Subject,用于给邮件 ...

  7. Xamarin Essentials教程数据处理传输数据

    Xamarin Essentials教程数据处理传输数据 在移动应用程序中,除了常规的数据处理,还涉及数据存储.数据传输.版本数据多个方面.Xamarin.Essentials组件提供了多个数据处理相 ...

  8. Xamarin Essentials教程地理定位Geolocation

    Xamarin Essentials教程地理定位Geolocation 通过地理定位功能,应用程序可以获取用户的当前地理位置,如经纬度值.利用地理位置,可以在地图上定位,也可以转化物理位置,划分用户的 ...

  9. Xamarin Essentials教程陀螺仪Gyroscope

    Xamarin Essentials教程陀螺仪Gyroscope 陀螺仪是用来检测设备在X.Y.Z轴上所旋转的角速度.应用程序通过陀螺仪可以获取设备在各个方向的转动角速度,可以实现更为丰富的控制功能, ...

最新文章

  1. 超市购物打印小票的简单程序 记录下来
  2. IFile、File与实体转换
  3. MATLAB从入门到精通-机械动力学仿真-Amesim仿真实例:对于任意的外力作用下的机械动力学仿真
  4. mapreduce运行模式
  5. 超简单,带你学会多线程爬虫
  6. Nginx服务的信号控制
  7. win定时关机_怎么让电脑定时关机,有多种办法
  8. php $start_date-sub(,PHP DateTime类常用方法总结
  9. 华为OV小米鸿蒙,华为鸿蒙开源,小米OV们会采用吗?
  10. AirPods Pro 到底「Pro」在哪里?
  11. [BZOJ 1012] [JSOI 2008] 最大数maxnumber
  12. excel VLOOKUP函数的使用方法(入门级)
  13. dYdX 2020年度回顾:累计交易量增长40倍
  14. halcon学习之图像增强、平滑和去噪
  15. 漏洞复现|CVE-2021-40444(Microsoft MSHTML 远程代码执行漏洞)
  16. matlab画散点图
  17. [OpenGL] L系统 分形树的实现(L-System植物建模)
  18. Java8新特性之一:Lambda表达式
  19. 6种自动化测试框架(总有一款适合你)
  20. 点乘a*b和叉乘aXb

热门文章

  1. P4756-Added Sequence【斜率优化】
  2. P1712-[NOI2016]区间【线段树,尺取法】
  3. codeforces1554 E. You(思维+数学+转化)
  4. 秀姿势(jzoj 3464)
  5. 汇编语言(三十二)之读写文件
  6. 漫画:什么是二叉堆?(修正版)
  7. mybatis入门(六)之SQL语句构建器类
  8. jdk1.8.0_45源码解读——ArrayList的实现
  9. JAVA面试常考系列二
  10. 《金色梦乡》金句摘抄(十一)