Rice University

Java 中的并发编程

Vivek Sarkar

位教师:Vivek Sarkar

26,413 人已注册

包含在 Coursera Plus

深入了解一个主题并学习基础知识。
4.5

(663 条评论)

中级 等级
需要一些相关经验
灵活的计划
2 周 在 10 小时 一周
自行安排学习进度
93%
大多数学生喜欢此课程
深入了解一个主题并学习基础知识。
4.5

(663 条评论)

中级 等级
需要一些相关经验
灵活的计划
2 周 在 10 小时 一周
自行安排学习进度
93%
大多数学生喜欢此课程

要了解的详细信息

可分享的证书

添加到您的领英档案

作业

4 项作业

授课语言:英语(English)

了解顶级公司的员工如何掌握热门技能

Petrobras, TATA, Danone, Capgemini, P&G 和 L'Oreal 的徽标

积累特定领域的专业知识

本课程是 Java 中的并行、并发和分布式编程 专项课程 专项课程的一部分
在注册此课程时,您还会同时注册此专项课程。
  • 向行业专家学习新概念
  • 获得对主题或工具的基础理解
  • 通过实践项目培养工作相关技能
  • 获得可共享的职业证书

该课程共有7个模块

欢迎学习《Java 中的并发编程》!本课程设计为三部分系列,通过各种视频讲座、演示和编码项目涵盖一个主题或知识体系。

涵盖的内容

1个视频5篇阅读材料1个编程作业1个讨论话题

在本模块中,我们将学习线程和锁,50 多年来,它们一直是并发编程的基本构件。 如今,所有计算平台都包含对线程和锁的某种形式的支持,并允许开发人员使用各种编程语言。我们将学习如何使用 Java 中的结构化锁(如同步语句/方法)和非结构化锁(如 java.util.concurrent 库)创建、连接和同步线程。 我们还将了解并发程序需要访问共享资源时可能出现的新错误类别。 这些错误被称为违反活泼性/进度保证,包括死锁、活锁和饥饿。 在本模块的最后,我们将研究经典的 "餐饮哲学家 "问题的不同解决方案,并用这些解决方案来说明死锁、活锁和饥饿的实例。

涵盖的内容

6个视频6篇阅读材料1个作业1个编程作业

在本模块中,我们将学习不同的方法来协调对共享资源的访问,而不会遇到前面学习过的死锁或活锁错误。 临界/隔离段是更高级的并发编程结构(相对于锁而言),它通过保证不存在死锁和活锁简化了互斥的实现。 如 "生成树"(Spanning Tree)示例所示,基于对象的隔离允许在每个对象上指定互斥,从而放宽了临界部分施加的限制。 Java 的原子变量是基于对象的隔离的一个重要但受限制的例子,它可以在所有硬件平台上高效地实现。 最后,我们将学习如何通过读/写访问模式进一步放松基于对象的隔离。

涵盖的内容

6个视频6篇阅读材料1个作业1个编程作业

Vivek Sarkar 教授与软件工程师 Shams Imam 博士在德克萨斯州休斯顿市中心的办公室就线程、锁、死锁、高级和低级结构以及并发编程的重要性进行了讨论,欢迎加入 Vivek Sarkar 教授的谈话。

涵盖的内容

2个视频1篇阅读材料

在本模块中,我们将学习另一种高级并发编程方法,即 "Actor "模型。 Actor 模型与 Isolated Sections 模型的主要区别在于,Actor 模型不允许任何形式的共享变量,因此不可能出现数据竞赛。 然而,与所有并发编程模型一样,由于消息传递顺序的内在异步性,在 Actor 模型中仍有可能出现更高层次的非确定性。 我们将研究使用 Actor 模型的多个并发实例,包括生成素数的经典埃拉托塞尼斯筛算法,以及缓冲区无界和有界的生产者-消费者模式。

涵盖的内容

6个视频6篇阅读材料1个作业1个编程作业

在本模块中,我们将学习并发数据结构,它是所有多线程编程系统中必不可少的软件层。 首先,我们将学习乐观并发(Optimistic Concurrency),这是一种重要的多线程模式,在这种模式中,两个线程可以 "乐观地 "完成各自分配的工作,而不必担心相互冲突,只需在 "提交 "工作结果之前检查是否存在冲突。 然后,我们将研究广泛使用的并发队列数据结构。 尽管使用并发队列的 API 非常简单,但使用乐观并发模型实现并发队列可能会很复杂,而且容易出错。 为此,我们还将学习线性化的正式概念,以便更好地理解并发数据结构的正确性要求。 然后,我们将研究另一种广泛使用的并发数据结构--并发散列图。 最后,我们将讨论一种用于查找无向图最小生成树的并发算法,该算法依赖于并发数据结构的使用。

涵盖的内容

6个视频7篇阅读材料1个作业1个编程作业

接下来的两个视频将展示学习 Java 中并行编程和分布式编程的重要性。Vivek Sarkar 教授将与 Two Sigma 的业内专业人士讨论如何在实际工作中运用我们另外两门课程的主题。

涵盖的内容

2个视频1篇阅读材料

获得职业证书

将此证书添加到您的 LinkedIn 个人资料、简历或履历中。在社交媒体和绩效考核中分享。

位教师

授课教师评分
4.7 (52个评价)
Vivek Sarkar
Rice University
3 门课程66,639 名学生

提供方

Rice University

从 软件开发 浏览更多内容

人们为什么选择 Coursera 来帮助自己实现职业发展

Felipe M.
自 2018开始学习的学生
''能够按照自己的速度和节奏学习课程是一次很棒的经历。只要符合自己的时间表和心情,我就可以学习。'
Jennifer J.
自 2020开始学习的学生
''我直接将从课程中学到的概念和技能应用到一个令人兴奋的新工作项目中。'
Larry W.
自 2021开始学习的学生
''如果我的大学不提供我需要的主题课程,Coursera 便是最好的去处之一。'
Chaitanya A.
''学习不仅仅是在工作中做的更好:它远不止于此。Coursera 让我无限制地学习。'

学生评论

4.5

663 条评论

  • 5 stars

    66.81%

  • 4 stars

    24.73%

  • 3 stars

    5.88%

  • 2 stars

    1.05%

  • 1 star

    1.50%

显示 3/663 个

FH
4

已于 Nov 26, 2020审阅

SS
4

已于 Apr 30, 2020审阅

PS
5

已于 Sep 1, 2017审阅

Coursera Plus

通过 Coursera Plus 开启新生涯

无限制访问 10,000+ 世界一流的课程、实践项目和就业就绪证书课程 - 所有这些都包含在您的订阅中

通过在线学位推动您的职业生涯

获取世界一流大学的学位 - 100% 在线

加入超过 3400 家选择 Coursera for Business 的全球公司

提升员工的技能,使其在数字经济中脱颖而出

常见问题