Как стать автором
Обновить

Параллельные вычисления, конкурентность и асинхронное программирование в Python: обзор для начинающих

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров2.8K
Всего голосов 6: ↑5 и ↓1+7
Комментарии7

Комментарии 7

Ух ты, заработало, подумал я и ткнул в единственно интересную ссылку - multiprocessing. Не для Android, iOS, WASI сказала она. Вот с этого и надо было начинать экономя время читателей.

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

Не для Android, iOS, WASI сказала она.

А Python что, уже штатно поддерживается для всего перечисленного? Мне известно про python-for-android и Buildozer, но, казалось, эти тулзы какие-то левоватые, и об ограничениях в поддержке чего-то уместней в их документации писать, а не прям в основной питоновской.

А Python что

А Python то. Хотите сказать, что дураки на docs.python.org документируют библиотеку выдумывая про "штатно поддерживемое" глупсти, а тут вдруг нашёлся умный и, усомнившись, на чистую воду их выводит?

Мне известно про python-for-android и Buildoze

Ну, скажем, Kivy можете поинтересоваться...

тулзы какие-то левоватые

Тулзы могут быть какие угодно, когда не работает в принципе, при любых мыслимых тулзах, это неважно.

А Python то. Хотите сказать, что дураки

Да понятно, что вы самый умный. Непонятно при этом, какое "ух ты, заработало", когда модулю multiprocessing десятки лет, и почему читателям должно быть интересно исключительно про его применение на "Androis, iOS, WASI". Но то такоэ...

Ну, скажем, Kivy можете поинтересоваться...

Программы на Kivy кросс-платформенные, под Android они собираются как раз через те самые python-for-android и Buildozer. Чем там интересоваться.

когда не работает в принципе, при любых мыслимых тулзах

Ну да, ну да, а если завтра умные люди портируют Python на советский троллейбус (Doom же недавно портировали), но там не будут работать threading, multiprocessing и asyncio, то об этом, конечно, сразу напишут на docs.python.org.

А подскажите, пожалуйста, как в мультипоточности (threading) правильно обрабатывать исключения? И, в частности, ронять всё приложение сразу, как только исключение возникло в любом из потоков?

если завтра умные люди портируют Python на советский троллейбус

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

об этом, конечно, сразу напишут на docs.python.org.

Кстати, смысл статьи, если попытаться его понять, прост - на Python с многопоточностью не так плохо и становится лучше. Это, в меру, правда...

Чем там интересоваться.

Ну, хотя бы тем, что

Программы на Kivy кросс-платформенные, под Android они собираются как раз через те самые python-for-android и Buildozer

и тогда станет сложнее с сожалением писать

казалось, эти тулзы какие-то левоватые

И у Вас неточность:

Да понятно, что вы самый умный.

Это, увы, не так. Да, с удачной стороны 20/80, но не самый.

Кстати, смысл статьи, если попытаться его понять, прост - на Python с многопоточностью не так плохо и становится лучше.

Да, вроде, по-прежнему хреново всё. Каким ты GIL, таким остался.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий