Как работает GIL и как от него избавиться

В этой очередной статье по GIL разберемся, как работает Python, как был реализован GIL до версии языка 3.2, как глобальная блокировка работает сейчас, и что с ней делать.

https://habr.com/ru/articles/938980/

#Python #GIL #потоки #процессы #многопоточность

Как работает GIL и как от него избавиться

В этой очередной статье по GIL разберемся, как работает Python, как был реализован GIL до версии языка 3.2, как глобальная блокировка работает сейчас, и что с ней делать. Для чего нужен GIL? Основная...

Хабр

Оптимизация управления задачами в Zephyr OS с помощью Thread Pool

Управлять потоками в C для каждой мелкой задачи — это боль. 😤 Даже самые простые задачи вынуждают возиться с k_thread_create , ждать завершения, чистить ресурсы — и всё это превращает твой код в бесконечную головную боль. 🤬 К счастью, в Zephyr OS есть спасение — Thread Pool : набор заранее выделенных потоков, которые берут задачи из очереди и выполняют их без лишнего мусора. Этот подход экономит ресурсы, время и твою нервную систему.

https://habr.com/ru/articles/925300/

#iot #iot_разработка #микроконтроллеры #embedded_systems #thread_pool #zephyr #rtos #embedded_c_programming #потоки

Оптимизация управления задачами в Zephyr OS с помощью Thread Pool

Управлять потоками в C для каждой мелкой задачи — это боль. 😤 Даже самые простые задачи вынуждают возиться с k_thread_create , ждать завершения, чистить ресурсы — и всё это превращает твой код в...

Хабр

[Перевод] ОС реального времени в эмуляторе Mario, или Как устроены потоки

В своём предыдущем посте о потоках я привёл импровизированное сравнение 1 : Потоки 2 — это просто состояния сохранения 3 эмулятора 4 , связанные с условием, при котором продолжается их выполнение. В тот момент я подумал, что это неплохая аналогия, но не мог перестать размышлять о ней. Я какое-то время крутил её в голове. Мне кажется, что у этой аналогии есть серьёзный потенциал в качестве инструмента обучения. Поэтому я добавил многопоточность в Super Mario Bros. для NES.

https://habr.com/ru/companies/ruvds/articles/914914/

#многопоточность #конкурентность #мьютексы #взаимная_блокировка #потоки #ruvds_перевод

ОС реального времени в эмуляторе Mario, или Как устроены потоки

В своём предыдущем посте о потоках я привёл импровизированное сравнение 1 : Потоки 2 — это просто состояния сохранения 3 эмулятора 4 , связанные с условием, при котором продолжается их выполнение. В...

Хабр

[Перевод] ОС реального времени в эмуляторе Mario, или Как устроены потоки

В своём предыдущем посте о потоках я привёл импровизированное сравнение 1 : Потоки 2 — это просто состояния сохранения 3 эмулятора 4 , связанные с условием, при котором продолжается их выполнение. В тот момент я подумал, что это неплохая аналогия, но не мог перестать размышлять о ней. Я какое-то время крутил её в голове. Мне кажется, что у этой аналогии есть серьёзный потенциал в качестве инструмента обучения. Поэтому я добавил многопоточность в Super Mario Bros. для NES.

https://habr.com/ru/companies/ruvds/articles/914914/

#многопоточность #конкурентность #мьютексы #взаимная_блокировка #потоки #ruvds_перевод

ОС реального времени в эмуляторе Mario, или Как устроены потоки

В своём предыдущем посте о потоках я привёл импровизированное сравнение 1 : Потоки 2 — это просто состояния сохранения 3 эмулятора 4 , связанные с условием, при котором продолжается их выполнение. В...

Хабр

[Перевод] История о потоке UI, зависавшем при вызове ядра

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

https://habr.com/ru/articles/902458/

#Linux #потоки #взаимная_блокировка #баги #стектрейс #дамп

История о потоке UI, зависавшем при вызове ядра

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

Хабр

[Перевод] Глубокое погружение в запросы, лимиты и специфику использования CPU в Kubernetes

Джон Такер помогает разобраться с ключевыми аспектами управления ресурсами CPU в Kubernetes. Он объясняет разницу между запросами и лимитами, показывает их влияние на производительность приложений и делится практическими советами по настройке контейнеров. Если хотите улучшить работу кластеров, эта статья станет вашим гидом.

https://habr.com/ru/companies/flant/articles/898190/

#запросы #лимиты #threads #потоки #троттлинг #троттлинг_в_kubernetes #поды #узлы #ноды #cpu

Глубокое погружение в запросы, лимиты и специфику использования CPU в Kubernetes

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

Хабр

Многопоточность. Снизу вверх. Потоки в языке C#

Привет, Хабр! Это Дмитрий Бахтенков. Добро пожаловать в третью часть цикла статей «Многопоточность. Снизу вверх»! Мы уже разобрали процессор и операционную систему , а сегодня поговорим про использование потоков в .NET с помощью языка программирования C#. Эта статья — обзор основных возможностей взаимодействия с потоками в .NET.

https://habr.com/ru/companies/beeline_cloud/articles/896412/

#многопоточность #потоки #управление_потоками #производительность_приложений #асинхронное_программирование #синхронизация_потоков #конкурентность

Многопоточность. Снизу вверх. Потоки в языке C#

Привет, Хабр! Это Дмитрий Бахтенков . Добро пожаловать в третью часть цикла статей «Многопоточность. Снизу вверх»! Мы уже разобрали  процессор  и  операционную систему , а сегодня...

Хабр

[Перевод] Ментальная модель потоков в Node.js

Приходилось ли вам работать с потоками в Node.js? Когда я впервые столкнулся с потоками, я, мягко говоря, оказался в растерянности. Эта концепция была совершенно новой для меня. Я полагал, что смогу обойтись и без них, но вскоре понял, что в Node.js они повсюду. Даже такие ключевые модули, как fs и http , используют потоки "под капотом". Поэтому мне пришлось погрузиться в изучение этой темы и разобраться в том, как потоки работают. В этом мне особенно помогло создание устойчивой ментальной модели, основанной на нескольких ключевых концепциях. В этой статье мы подробно рассмотрим эти концепции и сформируем ментальную модель потоков в Node.js.

https://habr.com/ru/companies/timeweb/articles/854330/

#timeweb_статьи_перевод #javascript #nodejs #nodejs #node #streams #stream #потоки #поток #data #данные

Ментальная модель потоков в Node.js

Приходилось ли вам работать с потоками в Node.js? Когда я впервые столкнулся с потоками, я, мягко говоря, оказался в растерянности. Эта концепция была совершенно новой для меня. Я полагал, что смогу...

Хабр

Не бойтесь потоков в Python, они не кусаются

Привет, любитель Python! Слышал о потоках, но чувствуешь себя немного неуверенно? Не волнуйся! Потоки в Python — это не про силу джедаев. Это хороший инструмент, который, кстати, вполне дружелюбен, если знать основные правила общения с ним. Правда, у потоков в Python есть свои нюансы, и часто можно услышать пугающее слово GIL. Но не спеши пугаться и бежать в сторону async-кода! Потоки в Python отлично работают в задачах ввода-вывода и могут здорово ускорить выполнение твоей программы, если применять их грамотно. Эта статья — как раз для тех, кто хочет понять потоки с нуля: разберём, для чего они нужны, когда стоит их использовать, а главное — как не наломать дров.

https://habr.com/ru/companies/otus/articles/857094/

#python #потоки

Не бойтесь потоков в Python, они не кусаются

Привет, любитель Python! Слышал о потоках, но чувствуешь себя немного неуверенно? Не волнуйся! Потоки в Python — это не про силу джедаев. Это хороший инструмент, который, кстати, вполне дружелюбен,...

Хабр

Рецензия на книгу «100 ошибок в Go и как их избежать» Тейва Харшани

Привет! Меня зовут Макс, я Go-разработчик в IT-компании SimbirSoft. Хочу поделиться своим отзывом на книгу «100 ошибок в Go и как их избежать» Тейва Харшани. Книга заинтересовала меня тем, что автор фокусирует свое внимание на ошибках, как распространенных, так и более редких. Читать далее⚡

https://habr.com/ru/companies/simbirsoft/articles/844530/

#книга #рецензия #обзор_книги #go #потоки #пул #itинфраструктура #горутины

Рецензия на книгу «100 ошибок в Go и как их избежать» Тейва Харшани

Привет! Меня зовут Макс, я Go-разработчик в IT-компании SimbirSoft. Хочу поделиться своим отзывом на книгу «100 ошибок в Go и как их избежать» Тейва Харшани. Книга заинтересовала меня тем, что автор...

Хабр