Уведомления
Уведомления
Авторизуйтесь, чтобы оценивать посты, писать комментарии и создавать записи.

Многопоточность

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

0

Многопоточность в Node.js

Рассказываем самое необходимое о многопоточности в Node.js v10.5.0. Потоковые воркеры, пул воркеров и worker_threads своими словами.

Обложка: Многопоточность в Node.js
0

Курс «Теория и практика многопоточного программирования»

Русскоязычный курс, рассказывающий о теоретических основах написания параллельных программ, математических подходах к доказательству корректности параллельных алгоритмов, разработке неожидающих параллельных алгоритмов, ошибках в параллельных программах и способах их решения.

Обложка: Курс «Теория и практика многопоточного программирования»
0

Курс «Многопоточный C++»

Русскоязычный видеокурс, посвященный изучению основ многопоточного программирования на языке C++. Курс записан в 2015 году в рамках проекта «Техносфера Mail.ru Group». Лектор курса — Дмитрий Калугин-Балашов.

Иван Бирюков
Иван Бирюков
0

Основные принципы программирования: конкурентность

В третьей статье цикла "Принципы программирования" мы поговорим о конкурентности (concurrency). Конкурентность --- это свойство систем (программы, сети, компьютера и т.д.), допускающее одновременное выполнение нескольких вычислительных процессов, которые могут взаимодействовать друг с другом. Вычисления запускаются, проходят и завершаются в пересекающихся промежутках времени; они также могут происходить абсолютно одновременно (параллелизм), но это не обязательно. 

0

Многопоточное программирование в Java 8. Часть третья. Атомарные переменные и конкурентные таблицы

Добро пожаловать в третью часть руководства по параллельному программированию в Java 8. В первой части мы рассматривали, как выполнять код параллельно с помощью потоков, задач и сервисов исполнителей. Во второй разбирались с тем, как синхронизировать доступ к изменяемым объектам с помощью ключевого слова synchronized, блокировок и семафоров. Сегодня, в заключительной части, я расскажу о двух…

Обложка: Многопоточное программирование в Java 8. Часть третья. Атомарные переменные и конкурентные таблицы
0

Многопоточное программирование в Java 8. Часть первая. Параллельное выполнение кода с помощью потоков

Добро пожаловать в первую часть руководства по параллельному программированию в Java 8. В этой части мы на простых примерах рассмотрим, как выполнять код параллельно с помощью потоков, задач и сервисов исполнителей.

0

Как выстрелить себе в ногу с помощью генератора случайных чисел

Предупредим сразу, что тут вы не найдете объяснения, как работают генераторы случайных чисел и почему полученные с их помощью числа не такие уж и случайные. Здесь будет только теория, так что, увы, прочитав эту статью, вы не научитесь взламывать игровые автоматы.

0

10 советов по многопоточному программированию на Java

Написание параллельного кода – непростая задача, а проверка его корректности – задача еще сложнее. Несмотря на то, что Java предоставляет обширную поддержку многопоточности и синхронизации на уровне языка и API, на деле же оказывается, что написание корректного многопоточного Java-кода зависит от опыта и усердности конкретного программиста. Ниже изложен набор советов, которые помогут вам качественно повысить…

0

Разработайте класс, обеспечивающий блокировку так, чтобы предотвратить возникновение мертвой блокировки

Существует несколько общих способов предотвратить мертвые блокировки. Один из самых популярных — обязать процесс явно объявлять, в какой блокировке он нуждается. Тогда мы можем проверить, будет ли созданная блокировка мертвой, и если так, можно прекратить работу.

0

Безопасность потоков в С++

Допустим, вы пишете конвейер, в котором 2 потока, используя общий буфер, обрабатывают данные. Поток-producer эти данные создает, а поток-consumer их обрабатывает (Producer–consumer problem). Следующий код представляет собой самую простую модель: с помощью std::thread мы порождаем поток-consumer, a создавать данные мы будем в главном потоке.

Спящий кот

Увы, но нам не удалось найти больше постов