Профессиональный фестиваль для тех, кто делает интернет
Фестиваль РИТ++ 2016 завершён. Изучайте презентации, смотрите фотографии и ждите видео :)

Ангелы и демоны многопоточного программированияТеория программирования

Доклад принят в программу конференции
Алексей Федоров

Лидер российской Java User Group, организатор конференций для программистов и сочувствующих. Два года провёл на позиции технического евангелиста в Одноклассниках, до этого три года проработал в питерском Oracle в Java Platform Group.
Увлекается многопоточным программированием, производительностью программ и современными рантаймами.

Современные процессоры имеют на борту по нескольку вычислительных ядер, позволяющих запускать задачи на них параллельно. И, казалось бы, вот оно — счастье: бей большие задачи на куски, запускай эти куски параллельно на разных ядрах и радуйся.

Но не все так просто. Для того чтобы одновременный доступ к общим данным выполнялся корректно, современные системы используют разные примитивы синхронизации. В основе одних лежат блокировки (locks), в основе других — операции типа сравнение-с-обменом (compare-and-swap). Однако и у тех и у других есть свои слабые места. О них мы и поговорим.

Из доклада вы узнаете, чем блокирующие алгоритмы отличаются от неблокирующих, и какими достоинствами и недостатками обладает каждый из этих классов. Кроме того, будут показаны различные подводные камни тех и других решений: Deadlock, Livelock, Starvation, Mutable vs Immutable hype.

Другие доклады секции Теория программирования