Java 21 является LTS-релизом, а значит у него будут выходить обновления как минимум 5 лет с момента выхода.
Читать полностью »
Рубрика «concurrency»
Вышла Java 21
2023-09-19 в 14:43, admin, рубрики: collections, concurrency, ffi, java21, JDK, jep, jvm, loom, oracle, pattern matching, string interpolation, vector api, virtual threads, zgcАтомики в Go: особенности внутренней реализации
2023-06-30 в 15:10, admin, рубрики: assembly, atomic, atomics, backend, concurrency, Go, golang, MutexАтомики в Go - это один из методов синхронизации горутин. Они находятся в пакете стандартной библиотеки sync/atomic. Некоторые статьи сравнивают atomics с mutex, так как это примитивы синхронизации низкого уровня. Они предоставляют бенчмарки и сравнения по скорости, например Go: How to Reduce Lock Contention with the Atomic Package.
Conc: новая библиотека для управления конкурентностью в Go
2023-04-15 в 18:37, admin, рубрики: conc, concurrency, Go, golang, конкурентное программирование, конкурентность, параллельное программированиеОдной из главных фишек языка Go является удобная работа с конкурентностью. Однако, в больших проектах всё равно возникают некоторые проблемы:
-
утечка горутин
-
некорректная обработка паник в горутинах
-
плохая читаемость кода
-
необходимость писать повторяющийся код из раза в раз
Как указывает автор библиотеки в своей статье, он часто сталкивается с ошибками при работе с горутинами, что побудило его создать новую библиотеку conc.
Особенности библиотеки
Swift async-await. Чем он лучше GCD?
2023-04-08 в 13:33, admin, рубрики: async/await, concurrency, GCD, iOS, kandinsky art, swift, разработка под iOS
SObjectizer: что это, для чего это и почему это выглядит именно так? Взгляд из 2022-го
2022-06-15 в 8:34, admin, рубрики: actor model, c++, c++17, concurrency, multithreading, open source, sobjectizer, ПрограммированиеШесть лет назад, в июне 2016-го года, вышла первая статья об инструменте, с разработкой которого я связан уже много лет. Шестилетней давности публикация дала толчок интереса к SObjectizer-у и, как я понимаю, кто-то сумел попробовать этот инструмент в деле (или собрался попробовать) именно благодаря той статье. Поскольку за прошедшее время SObjectizer несколько изменился, то я подумал, что не помешало бы выпустить обновленную версию статьи. Исправленную и дополненную. С учетом не только того, что изменилось/появилось/исчезло, но и отталкиваясь от критических отзывов на предыдущие обзорные статьи.
Joker 2020: продолжение сезона онлайн-конференций
2020-11-29 в 19:06, admin, рубрики: concurrency, java, joker, jug.ru, kotlin, oracle, spring, конференцииТолько что, c 25 по 28 ноября 2020 года, прошла Java-конференция Joker 2020. Это уже второй сезон конференций, проводимых JUG Ru Group в формате онлайн.
В онлайн-формате конференция стала лучше или хуже? Что нового организаторами было придумано? Кого из спикеров с какими докладами можно было увидеть и услышать? Что полезного и интересного было в докладах? Имеет ли смысл посещать конференцию в следующем году?
Корутины и синхронизация. Лучше не смешивать
2020-11-19 в 9:39, admin, рубрики: concurrency, coroutines, funcorp, kotlin, multithreading, Mutex, synchronized, syncronize, Блог компании FunCorp, ПрограммированиеПредположим, у вас в коде есть критическая секция, которая не должна выполняться более, чем одним потоком одновременно.
В мире Java одним из стандартных решений является добавление ключевого слова synchronized
к сигнатуре метода. В Kotlin для получения того же эффекта используется аннотация @Synchronized
Читать полностью »
Deadlock Empire — игра для разработчиков
2020-02-14 в 8:15, admin, рубрики: .net, avanpost, C#, concurrency, multithreading, Mutex, parallel programming, semaphore, Блог компании Avanpost, Игры и игровые приставки, многопоточность, ПрограммированиеХабр, как известно, не место для игр, но мы нашли одно исключение, которое, как нам кажется, достойно упоминания здесь!
Встречайте: Deadlock Empire!
Суть игры — управление планировкой потоков, код которых приведен в заданиях. Управлять нужно так, чтобы добиться ошибочной ситуации: взаимблокировки, повторных значений счетчиков, достижения определенных участков кода и прочих непредвиденных ситуаций, которые нужно осознавать при разработке многопоточных приложений.
Читать полностью »