Публикации по теме 'multithreading'


Многопоточность Node.js: выполнение обратных вызовов в отдельных потоках
Как выполнить многопоточность в Node.js Прошло уже пять лет с тех пор, как Node.js представил собственную библиотеку worker_threads , предназначенную для создания воркеров, по сути функционирующих как потоки. Когда он был выпущен, я был полон энтузиазма и стремился создать что-то интересное в этом плане. Обсуждая рабочие потоки, я заметил, что не каждому удается построить правильную систему, использующую worker_threads . Следовательно, я начал поиск абстракций, которые могли бы..

Java ThreadLocal — Благополучие и проклятие
Недавно я и моя команда работали над тестированием производительности определенного фрагмента кода (в частности, конечной точки HTTP), который был в значительной степени унаследован, но также имел некоторые собственные дополнения. Чтобы убедиться, что общая задержка операции соответствует требованиям SLA с новыми дополнениями, мы начали проводить нагрузочный тест с помощью Jmeter . Унаследованный код также будет асинхронно публиковать некоторые сообщения в нашей внутренней шине..

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

Многопоточность — жизненный цикл потока, объединение потоков(), потоки демона
Жизненный цикл потока В Java поток проходит четыре состояния в течение своего жизненного цикла: - Новый - Работает - Ожидание — [Заблокировано, Ожидание, Ожидание по времени] - Не работает Новый — когда поток создан и готов к использованию. Это состояние, когда мы еще не начали поток. Выполняется — поток переходит в это состояние после того, как мы его запустили. Поток выполняет свою задачу в этом состоянии Ожидание — состояние ожидания соответствует трем сценариям..

Гранд Сентрал Диспетч - Свифт 3
Grand Central Dispatch или GCD - это способ справиться с многозадачностью в наших приложениях для iOS. Принцип работы этой системы заключается в том, что ряд задач может быть отправлен в очереди отправки, которые, в свою очередь, будут выполняться в нескольких потоках и в конечном итоге будут управляться системой. Часто мы думаем о GCD, когда пытаемся обновить пользовательский интерфейс в одном из наших приложений. Эти обновления происходят в основном потоке, однако есть и другие..

Установите другое место для Платона
Обедающие философы — так обычно называют теоретическую проблему параллелизма, предложенную Эдсгером Дейкстрой, одним из первых исследователей в этой области. В этой статье я даю полное решение ( без голодания и максимально загруженное ) с использованием модели многопоточности POSIX . В этом примере показан общий метод программирования под названием совместная проверка состояния , который я использовал на протяжении всей своей карьеры для решения большинства проблем параллелизма..

Веб-воркеры за 8 минут
Теперь, несмотря на то, что javascript является однопоточным, он хорошо обрабатывает асинхронные операции, не блокируя основной поток, благодаря синергии между стеком вызовов, веб-API, очередью обратного вызова и циклом обработки событий . Но что, если код, блокирующий основной поток, не является асинхронной операцией? Что, если есть цикл while с пограничным случаем, который заставляет его работать вечно? Ваш стек вызовов всегда будет занят этой циклической операцией, и если в очереди..