home.social

#многопоточное_программирование — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #многопоточное_программирование, aggregated by home.social.

  1. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2

    Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на

    habr.com/ru/companies/oleg-bun

    #go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память

  2. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2

    Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на

    habr.com/ru/companies/oleg-bun

    #go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память

  3. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2

    Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на

    habr.com/ru/companies/oleg-bun

    #go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память

  4. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 2

    Описание модели памяти Go начинается со слов «если вы читаете этот документ — вы излишне умный, остановитесь». Многие и правда остановились, но не автор этой статьи. Привет, Хабр! Я — Игорь Панасюк, и это вторая часть материала по мотивам моего выступления на

    habr.com/ru/companies/oleg-bun

    #go #golang #golangconf #вопросы_языкознани #многопоточное_программирование #конференции #программирование #память

  5. Многопоточная среда в разработке JAVA

    Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.

    habr.com/ru/articles/1022934/

    #многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения

  6. Многопоточная среда в разработке JAVA

    Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.

    habr.com/ru/articles/1022934/

    #многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения

  7. Многопоточная среда в разработке JAVA

    Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.

    habr.com/ru/articles/1022934/

    #многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения

  8. Многопоточная среда в разработке JAVA

    Если ты разработчик, то тебя это коснется. Спустя какое то время, кто-то раньше, кто-то позже, но каждый приходит к тому, что пора реально взять и разобраться в многопоточке. Я как то писал статью для себя, когда готовился к собесам и понял, что мне самому очень вкатывает такой формат обучения, когда ты пишешь статью на тему, которую исследуешь изучаешь. Так информация осваивается в разы лучше. Поэтому я собираюсь пропустить через себя огромный объем информации по многопоточности. Буду работать как супер компьютер обрабатывать сразу все возможные ветки в направлении освоения многопоточности.

    habr.com/ru/articles/1022934/

    #многопоточность #многопоточное_программирование #многопоточность_на_java #многопоточные_приложения

  9. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1

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

    habr.com/ru/companies/oleg-bun

    #go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания

  10. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1

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

    habr.com/ru/companies/oleg-bun

    #go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания

  11. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1

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

    habr.com/ru/companies/oleg-bun

    #go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания

  12. Особенности и ловушки модели памяти в Go: тайны синхронизации. Часть 1

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

    habr.com/ru/companies/oleg-bun

    #go #golang #многопоточное_программирование #конференции #память #Вопросы_языкознания

  13. Многопоточность без боли: моя шпаргалка для собесов в Java

    Всем привет!) Я работаю Senior Java Developer в одном из банков, и за последние годы мне пришлось пройти не одно собеседование, услышать десятки каверзных вопросов и потратить уйму времени на подготовку. И вот что я понял: многопоточность — это одна из самых сложных и любимых тем на Java-собеседованиях , независимо от уровня кандидата. Поэтому в этой статье я хочу помочь вам уверенно подготовиться к секции по concurrency: разберём ключевые термины, посмотрим, как это работает на практике, и дам несколько советов, которые реально помогают на собесах. Поехали!

    habr.com/ru/articles/966892/

    #java #kotlin #multithreading #многопоточность #многопоточное_программирование #собеседование #собеседование_в_it #thread #concurrency #интервью

  14. Spinlock vs. Mutex vs. Semaphore: Разбираемся в синхронизации с Zephyr OS

    Всем привет! Сегодня хочу углубиться в одну из самых важных тем в мире Zephyr OS — синхронизацию потоков и задач. Если вы хоть раз работали с k_thread_create , гоняли потоки туда-сюда и ловили bus fault, вы меня понимаете. Когда задача одна — всё просто. Но как только вырастает многопоточность, задачи начинают драться за общий ресурс — и тут без надёжной синхронизации не обойтись. У Zephyr OS есть три главных инструмента для этого: spinlock , mutex и semaphore . Каждый со своим характером и подводными камнями.

    habr.com/ru/articles/925168/

    #многопоточность #многопоточное_программирование #rtos #ZephyrOS #zephyr_project #embedded #embedded_software_development #embedded_systems

  15. Веб-воркеры — многопоточность в JavaScript

    Даже самые зелёные новички в вебе знаю, что скрипты JS, нужно располагать в самом низу страницы перед закрывающим тегом `` и всё знаю что это повышает скорость загрузки страницы. Но Вы когда-нибудь задумывалась почему оно так? JavaScript по своей природе однопоточный язык, но мало того, он делит этот единственный поток сразу с HTML и CSS. Это приводит к тому, что встречая тег <script> , браузер начинает, исполнять его код, при этом останавливая дальнейшую обработку HTML и CSS и в результате пользователь наблюдает белый экран, вместо сайта, до тех самых пор пока, браузер не закончит с кодом JavaScript. Именно потому убирая подключения скриптов, в самый конец страницы, мы даём интерфейсу сайта максимально быстро погрузится и не бесить пользователей белой простынёй. Но подобный подход годен не везде, иногда жизненно необходимо, чтобы код JS, начал исполнение как можно раньше. Да и при подключении в самом низу, крупный JS-бандл, может здорово подкосить перфоманс сайта. Как быть в таких ситуациях? Смирится с тем что пользователи будут испытывать определённый дискомфорт во время загрузки сайта? Конечно же нет, можно попробовать вынести наш код в веб-воркеры! Так что такое эти ваши веб-воркеры?

    habr.com/ru/articles/915518/

    #javascript #вебворкер #вебворкеры #webworkers #многопоточность #многопоточное_программирование #js #воркеры

  16. Многопоточное программирование на C

    Привет хабр! Новичок в написании статей, но никогда не поздно начать. Объемный гайд по функциям pthreads для людей знающих базы C/C++.

    habr.com/ru/articles/881444/

    #многопоточность #многопоточное_программирование #си #синхронизация #threading #функции

  17. Безболезненная миграция с NATS на Kafka

    Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.

    habr.com/ru/articles/870018/

    #Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование

  18. Безболезненная миграция с NATS на Kafka

    Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.

    habr.com/ru/articles/870018/

    #Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование

  19. Безболезненная миграция с NATS на Kafka

    Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.

    habr.com/ru/articles/870018/

    #Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование

  20. Безболезненная миграция с NATS на Kafka

    Привет, Хабр! Меня зовут Максим, я Go-разработчик из Wildberries. Свою дебютную статью я хочу посвятить довольно популярной теме, когда на проекте приходится уходить с одной технологии на другую. Данная статья будет полезна разработчикам, кто активно использует асинхронный способ передачи данных в своих проектах.

    habr.com/ru/articles/870018/

    #Go #kafka #nats #backendпрограммирование #backendразработка #backend #software_development #многопоточность #многопоточное_программирование

  21. Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода

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

    habr.com/ru/articles/860774/

    #swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений

  22. Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода

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

    habr.com/ru/articles/860774/

    #swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений

  23. Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода

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

    habr.com/ru/articles/860774/

    #swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений

  24. Побеждаем Data Race в Swift: Осваиваем инструменты и секреты безопасного кода

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

    habr.com/ru/articles/860774/

    #swift #swift__разработка #swift_development #swift_5 #swift_6 #ios_development #ios_разработка #многопоточность #многопоточное_программирование #разработка_приложений

  25. ConcurrentBag в C#

    Привет, Хабр! В многопоточном программирование постоянно нужно решать задачи, связанные с доступом к данным из нескольких потоков одновременно. И тут очень кстати ConcurrentBag — коллекция, которая была добавлена в .NET Framework 4.0 специально для таких случаев. Она подходит для ситуаций, где порядок элементов не важен. Если нужно просто кидать данные в мешок, пока куча потоков их туда же добавляет. Поэтому ConcurrentBag создана для сценариев, где один и тот же поток часто и добавляет, и извлекает данные. Поэтому эта коллекция идеальна для паттернов типа Producer-Consumer, где один поток наполняет коллекцию, а другой извлекает данные для дальнейшей обработки. Но самое классное, что работает она по принципу work-stealing.

    habr.com/ru/companies/otus/art

    #c# #многопоточное_программирование #ConcurrentBag

  26. Оптимизация в Python. Эффективное использование модуля threading и asyncio

    ▍ Введение При создании нового приложения с нуля, где основным ограничивающим фактором является производительность ввода-вывода, использование asyncio может быть вполне оправданным выбором. С самого начала можно интегрировать неблокирующие библиотеки, совместимые с asyncio, такие как asyncpg и aiohttp. Однако большая часть работы может быть связана с поддержкой уже существующего кода, который использует блокирующие библиотеки ввода-вывода, например, requests для HTTP-запросов или psycopg для взаимодействия с базами данных Postgres. Кроме того, возможно, что подходящих библиотек, совместимых с asyncio, просто не существует. В таком случае, как можно извлечь выгоду из конкурентных преимуществ, которые предлагает asyncio? Многопоточность предоставляет решение для данной задачи. Поскольку блокирующие операции ввода-вывода освобождают глобальную блокировку интерпретатора, мы можем выполнять ввод-вывод параллельно в различных потоках. Аналогично библиотеке multiprocessing, asyncio позволяет использовать пулы потоков, что даёт нам все преимущества многопоточности, не отказываясь от таких API, как gather и wait.

    habr.com/ru/companies/ruvds/ar

    #python3 #asyncio #threading #ThreadPoolExecutor #многопоточное_программирование #ruvds_статьи

  27. Анимация фрактала Lozi map

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

    habr.com/ru/articles/828464/

    #C++ #математика #фракталы #Windows #linux #многопоточное_программирование

  28. Ещё о красоте в простой формуле

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

    habr.com/ru/articles/820911/

    #с++ #математика #фракталы #Windows #linux #многопоточное_программирование