К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Concurrent Programming in Java · LearnSpace
Назад в каталог
courseraПрограммирование

Concurrent Programming in Java

Курс от Rice University
Средний≈ 19 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

This course teaches learners (industry professionals and students) the fundamental concepts of concurrent programming in the context of Java 8. Concurrent programming enables developers to efficiently and correctly mediate the use of shared resources in parallel programs. By the end of this course, you will learn how to use basic concurrency constructs in Java such as threads, locks, critical sections, atomic variables, isolation, actors, optimistic concurrency and concurrent collections, as well as their theoretical foundations (e.g., progress guarantees, deadlock, livelock, starvation, linearizability). Why take this course? • It is important for you to be aware of the theoretical foundations of concurrency to avoid common but subtle programming errors. • Java 8 has modernized many of the concurrency constructs since the early days of threads and locks. • During the course, you will have online access to the instructor and mentors to get individualized answers to your questions posted on the forums. • Each of the four modules in the course includes an assigned mini-project that will provide you with the necessary hands-on experience to use the concepts learned in the course on your own, after the course ends. The desired learning outcomes of this course are as follows: • Concurrency theory: progress guarantees, deadlock, livelock, starvation, linearizability • Use of threads and structured/unstructured locks in Java • Atomic variables and isolation • Optimistic concurrency and concurrent collections in Java (e.g., concurrent queues, concurrent hashmaps) • Actor model in Java Mastery of these concepts will enable you to immediately apply them in the context of concurrent Java programs, and will also help you master other concurrent programming system that you may encounter in the future (e.g., POSIX threads, .NET threads).

Навыки, которые вы освоите

Java ProgrammingData StructuresJavaData SharingProgramming PrinciplesSystem ProgrammingComputer ProgrammingAlgorithmsComputer Science

Программа курса

7 модулей · 71 учебных материалов

01Welcome to the Course!8 материалов

About the Course

Course WelcomeВидеоGeneral Course InfoЧтениеCourse Icon LegendЧтениеDiscussion Forum GuidelinesЧтение

Учитесь у экспертов

Vivek Sarkar

Professor

Concurrent Programming in Java
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 19 ч

7 модулей

Язык: Английский

Субтитры: Арабский, Французский, Бенгальский, Украинский, Китайский (Китай), Греческий, Итальянский, Бразильский португальский, Вьетнамский, Нидерландский, Корейский, Немецкий, Пушту, Урду, Русский, Тайский, Индонезийский, Шведский, Турецкий, Азербайджанский, Испанский, Дари, Хинди, Японский, Казахский, Венгерский, Польский

Часть программы вашего университета
Get to Know Your Classmates!Обсуждение
Pre-Course SurveyЧтение

Optional: Mini Project

Mini Project 0: SetupЧтениеMini Project 0 SubmissionПрограммирование
02Threads and Locks14 материалов

Course Content

1.1 ThreadsВидео1.1 Lecture SummaryЧтение1.2 Structured LocksВидео1.2 Lecture SummaryЧтение1.3 Unstructured LocksВидео1.3 Lecture SummaryЧтение1.4 LivenessВидео1.4 Lecture SummaryЧтение1.5 Dining PhilosophersВидео1.5 Lecture SummaryЧтение

Mini Project

Mini Project 1: Locking and SynchronizationЧтениеDemonstration: Locking and SynchronizationВидеоMini Project 1 SubmissionПрограммирование

Quiz

Module 1 QuizЗадание
03Critical Sections and Isolation14 материалов

Course Content

2.1 Critical SectionsВидео2.1 Lecture SummaryЧтение2.2 Object Based Isolation (Monitors)Видео2.2 Lecture SummaryЧтение2.3 Concurrent Spanning Tree AlgorithmВидео2.3 Lecture SummaryЧтение2.4 Atomic VariablesВидео2.4 Lecture SummaryЧтение2.5 Read, Write IsolationВидео2.5 Lecture SummaryЧтение

Mini Project

Mini Project 2: Global and Object-Based IsolationЧтениеDemonstration: Global and Object-Based IsolationВидеоMini Project 2 SubmissionПрограммирование

Quiz

Module 2 QuizЗадание
04Talking to Two Sigma: Using it in the Field3 материалов

Talking to Two Sigma: Using it in the Field

About these TalksЧтениеIndustry Professional on Parallel, Concurrent, and Distributed Programming in Java - Jim Ward, Managing DirectorВидеоIndustry Professional on Concurrency - Dr. Shams Imam, Software EngineerВидео
05Actors14 материалов

Course Content

3.1 ActorsВидео3.1 Lecture SummaryЧтение3.2 Actor ExamplesВидео3.2 Lecture SummaryЧтение3.3 Sieve of Eratosthenes AlgorithmВидео3.3 Lecture SummaryЧтение3.4 Producer-Consumer ProblemВидео3.4 Lecture SummaryЧтение3.5 Bounded Buffer ProblemВидео3.5 Lecture SummaryЧтение

Mini Project

Mini Project 3: Sieve of Eratosthenes Using Actor ParallelismЧтениеDemonstration: Sieve of Eratosthenes Using Actor ParallelismВидеоMini Project 3 SubmissionПрограммирование

Quiz

Module 3 QuizЗадание
06Concurrent Data Structures15 материалов

Course Content

4.1 Optimistic ConcurrencyВидео4.1 Lecture SummaryЧтение4.2 Concurrent QueueВидео4.2 Lecture SummaryЧтение4.3 LinearizabilityВидео4.3 Lecture SummaryЧтение4.4 Concurrent Hash MapВидео4.4 Lecture SummaryЧтение4.5 Concurrent Minimum Spanning Tree AlgorithmВидео4.5 Lecture SummaryЧтение

Required: Mini Project 4

Mini Project 4: Parallelization of Boruvka's Minimum Spanning Tree AlgorithmЧтениеDemonstration: Parallelization of Boruvka's Minimum Spanning Tree AlgorithmВидеоMini Project 4 SubmissionПрограммирование

Quiz

Module 4 QuizЗаданиеExit SurveyЧтение
07Continue Your Journey with the Specialization "Parallel, Concurrent, and Distributed Programming in Java"3 материалов

Industry Professionals on Parallel and Distributed Programming

Our Other Course OfferingsЧтениеIndustry Professionals on Parallelism - Jake Kornblau and Margaret Kelley, Software Engineers, Two SigmaВидеоIndustry Professional on Distribution - Dr. Eric Allen, Senior Vice President, Two SigmaВидео