#многопоточное_программирование — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #многопоточное_программирование, aggregated by home.social.
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2
Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на
https://habr.com/ru/companies/oleg-bunin/articles/1014084/
#go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2
Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на
https://habr.com/ru/companies/oleg-bunin/articles/1014084/
#go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2
Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на
https://habr.com/ru/companies/oleg-bunin/articles/1014084/
#go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2
Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на
https://habr.com/ru/companies/oleg-bunin/articles/1014084/
#go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память
-
Многопоточная среда в разработке JAVA
Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.
https://habr.com/ru/articles/1022934/
#многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения
-
Многопоточная среда в разработке JAVA
Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.
https://habr.com/ru/articles/1022934/
#многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения
-
Многопоточная среда в разработке JAVA
Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.
https://habr.com/ru/articles/1022934/
#многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения
-
Многопоточная среда в разработке JAVA
Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.
https://habr.com/ru/articles/1022934/
#многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1
Большинство программистов, работая с многопоточным кодом, осведомлены о примитивах синхронизации. При этом мало кто задумывается о существующей за этим сложной теории. Привет, Хабр! Меня зовут Игорь Панасюк, я работаю в Яндекс. В этой статье по мотивам моего доклада для
https://habr.com/ru/companies/oleg-bunin/articles/1014080/
#go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1
Большинство программистов, работая с многопоточным кодом, осведомлены о примитивах синхронизации. При этом мало кто задумывается о существующей за этим сложной теории. Привет, Хабр! Меня зовут Игорь Панасюк, я работаю в Яндекс. В этой статье по мотивам моего доклада для
https://habr.com/ru/companies/oleg-bunin/articles/1014080/
#go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1
Большинство программистов, работая с многопоточным кодом, осведомлены о примитивах синхронизации. При этом мало кто задумывается о существующей за этим сложной теории. Привет, Хабр! Меня зовут Игорь Панасюк, я работаю в Яндекс. В этой статье по мотивам моего доклада для
https://habr.com/ru/companies/oleg-bunin/articles/1014080/
#go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания
-
Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1
Большинство программистов, работая с многопоточным кодом, осведомлены о примитивах синхронизации. При этом мало кто задумывается о существующей за этим сложной теории. Привет, Хабр! Меня зовут Игорь Панасюк, я работаю в Яндекс. В этой статье по мотивам моего доклада для
https://habr.com/ru/companies/oleg-bunin/articles/1014080/
#go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания
-
Многопоточность без боли: моя шпаргалка для собесов в Java
Всем привет!) Я работаю Senior Java Developer в одном из банков, и за последние годы мне пришлось пройти не одно собеседование, услышать десятки каверзных вопросов и потратить уйму времени на подготовку. И вот что я понял: многопоточность — это одна из самых сложных и любимых тем на Java-собеседованиях , независимо от уровня кандидата. Поэтому в этой статье я хочу помочь вам уверенно подготовиться к секции по concurrency: разберём ключевые термины, посмотрим, как это работает на практике, и дам несколько советов, которые реально помогают на собесах. Поехали!
https://habr.com/ru/articles/966892/
#java #kotlin #multithreading #многопоточность #многопоточное_программирование #собеседование #собеседование_в_it #thread #concurrency #интервью
-
Spinlock vs. Mutex vs. Semaphore: Разбираемся в синхронизации с Zephyr OS
Всем привет! Сегодня хочу углубиться в одну из самых важных тем в мире Zephyr OS — синхронизацию потоков и задач. Если вы хоть раз работали с k_thread_create , гоняли потоки туда-сюда и ловили bus fault, вы меня понимаете. Когда задача одна — всё просто. Но как только вырастает многопоточность, задачи начинают драться за общий ресурс — и тут без надёжной синхронизации не обойтись. У Zephyr OS есть три главных инструмента для этого: spinlock , mutex и semaphore . Каждый со своим характером и подводными камнями.
https://habr.com/ru/articles/925168/
#многопоточность #многопоточное_программирование #rtos #ZephyrOS #zephyr_project #embedded #embedded_software_development #embedded_systems
-
Веб-воркеры — многопоточность в JavaScript
Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так? JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script> , браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй. Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры! Так что такое эти ваши веб-воркеры?
https://habr.com/ru/articles/915518/
#javascript #вебворкер #вебворкеры #webworkers #многопоточность #многопоточное_программирование #js #воркеры
-
Многопоточное программирование на C
Привет хабр! Новичок в написании статей, но никогда не поздно начать. Объемный гайд по функциям pthreads для людей знающих базы C/C++.
https://habr.com/ru/articles/881444/
#многопоточность #многопоточное_программирование #си #синхронизация #threading #функции
-
Безболезненная миграция с NATS на Kafka
Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.
https://habr.com/ru/articles/870018/
#Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование
-
Безболезненная миграция с NATS на Kafka
Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.
https://habr.com/ru/articles/870018/
#Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование
-
Безболезненная миграция с NATS на Kafka
Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.
https://habr.com/ru/articles/870018/
#Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование
-
Безболезненная миграция с NATS на Kafka
Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.
https://habr.com/ru/articles/870018/
#Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование
-
Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода
Гонка за данными (Data Race) — одна из самых неприятных ошибок, с которыми может столкнуться разработчик. Она возникает в многопоточной среде, когда несколько операций одновременно пытаются получить доступ к одним и тем же данным, при этом хотя бы одна из этих операций выполняет их изменение. Последствия таких гонок могут быть крайне серьезными: в лучшем случае приложение может упасть с ошибкой, а в худшем — произойдет искажение данных, с которыми работает пользователь. Это может негативно сказаться на дальнейшей работе с этими данными и привести к непредсказуемым результатам работы приложения. Обеспечение корректного доступа к общим ресурсам в многопоточных приложениях — ключевая задача, требующая внимательного подхода и изучения. В этой статье мы рассмотрим как используя инструменты, доступные нам в языке Swift, предотвратить наличие гонки за данными.
https://habr.com/ru/articles/860774/
#swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений
-
Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода
Гонка за данными (Data Race) — одна из самых неприятных ошибок, с которыми может столкнуться разработчик. Она возникает в многопоточной среде, когда несколько операций одновременно пытаются получить доступ к одним и тем же данным, при этом хотя бы одна из этих операций выполняет их изменение. Последствия таких гонок могут быть крайне серьезными: в лучшем случае приложение может упасть с ошибкой, а в худшем — произойдет искажение данных, с которыми работает пользователь. Это может негативно сказаться на дальнейшей работе с этими данными и привести к непредсказуемым результатам работы приложения. Обеспечение корректного доступа к общим ресурсам в многопоточных приложениях — ключевая задача, требующая внимательного подхода и изучения. В этой статье мы рассмотрим как используя инструменты, доступные нам в языке Swift, предотвратить наличие гонки за данными.
https://habr.com/ru/articles/860774/
#swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений
-
Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода
Гонка за данными (Data Race) — одна из самых неприятных ошибок, с которыми может столкнуться разработчик. Она возникает в многопоточной среде, когда несколько операций одновременно пытаются получить доступ к одним и тем же данным, при этом хотя бы одна из этих операций выполняет их изменение. Последствия таких гонок могут быть крайне серьезными: в лучшем случае приложение может упасть с ошибкой, а в худшем — произойдет искажение данных, с которыми работает пользователь. Это может негативно сказаться на дальнейшей работе с этими данными и привести к непредсказуемым результатам работы приложения. Обеспечение корректного доступа к общим ресурсам в многопоточных приложениях — ключевая задача, требующая внимательного подхода и изучения. В этой статье мы рассмотрим как используя инструменты, доступные нам в языке Swift, предотвратить наличие гонки за данными.
https://habr.com/ru/articles/860774/
#swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений
-
Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода
Гонка за данными (Data Race) — одна из самых неприятных ошибок, с которыми может столкнуться разработчик. Она возникает в многопоточной среде, когда несколько операций одновременно пытаются получить доступ к одним и тем же данным, при этом хотя бы одна из этих операций выполняет их изменение. Последствия таких гонок могут быть крайне серьезными: в лучшем случае приложение может упасть с ошибкой, а в худшем — произойдет искажение данных, с которыми работает пользователь. Это может негативно сказаться на дальнейшей работе с этими данными и привести к непредсказуемым результатам работы приложения. Обеспечение корректного доступа к общим ресурсам в многопоточных приложениях — ключевая задача, требующая внимательного подхода и изучения. В этой статье мы рассмотрим как используя инструменты, доступные нам в языке Swift, предотвратить наличие гонки за данными.
https://habr.com/ru/articles/860774/
#swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений
-
ConcurrentBag в C#
Привет, Хабр! В многопоточном программирование постоянно нужно решать задачи, связанные с доступом к данным из нескольких потоков одновременно. И тут очень кстати ConcurrentBag — коллекция, которая была добавлена в .NET Framework 4.0 специально для таких случаев. Она подходит для ситуаций, где порядок элементов не важен. Если нужно просто кидать данные в мешок, пока куча потоков их туда же добавляет. Поэтому ConcurrentBag создана для сценариев, где один и тот же поток часто и добавляет, и извлекает данные. Поэтому эта коллекция идеальна для паттернов типа Producer-Consumer, где один поток наполняет коллекцию, а другой извлекает данные для дальнейшей обработки. Но самое классное, что работает она по принципу work-stealing.
-
Оптимизация в Python. Эффективное использование модуля threading и asyncio
▍ Введение При создании нового приложения с нуля, где основным ограничивающим фактором является производительность ввода-вывода, использование asyncio может быть вполне оправданным выбором. С самого начала можно интегрировать неблокирующие библиотеки, совместимые с asyncio, такие как asyncpg и aiohttp. Однако большая часть работы может быть связана с поддержкой уже существующего кода, который использует блокирующие библиотеки ввода-вывода, например, requests для HTTP-запросов или psycopg для взаимодействия с базами данных Postgres. Кроме того, возможно, что подходящих библиотек, совместимых с asyncio, просто не существует. В таком случае, как можно извлечь выгоду из конкурентных преимуществ, которые предлагает asyncio? Многопоточность предоставляет решение для данной задачи. Поскольку блокирующие операции ввода-вывода освобождают глобальную блокировку интерпретатора, мы можем выполнять ввод-вывод параллельно в различных потоках. Аналогично библиотеке multiprocessing, asyncio позволяет использовать пулы потоков, что даёт нам все преимущества многопоточности, не отказываясь от таких API, как gather и wait.
https://habr.com/ru/companies/ruvds/articles/834868/
#python3 #asyncio #threading #ThreadPoolExecutor #многопоточное_программирование #ruvds_статьи
-
Анимация фрактала Lozi map
Предыдущая статья натолкнула меня на мысль написать ещё одну программу, генерирующую последовательности изображений с другим типом фракталов. В ней пришлось применить более сложную анимацию коэффициентов.
https://habr.com/ru/articles/828464/
#C++ #математика #фракталы #Windows #linux #многопоточное_программирование
-
Ещё о красоте в простой формуле
Обсуждение недавно опубликованной статьи натолкнуло меня на мысль написать свою программу, генерирующую последовательности изображений с анимацией фракталов. Прилагается программа с исходным кодом, примеры изображений и видео, полученное из последовательности изображений.
https://habr.com/ru/articles/820911/
#с++ #математика #фракталы #Windows #linux #многопоточное_программирование