Найти - Пользователи
Полная версия: threating приоритет потоков
Начало » Python для экспертов » threating приоритет потоков
1 2
axe
есть ли возможность выставлять потокам приоритет выполнения?
Андрей Светлов
В самом Питоне, насколько помню, нет. В winapi/pthread есть. Т.е. выкрутиться можно, но не всегда легко.
slav0nic
https://www.ibm.com/developerworks/ru/library/l-pythrd/
почитай варианты в саамом низу
axe
приложение запускается под debian.

slav0nic, посмотрел статью. как понял, там вообще потоков как таковых нет. имитация потоков с помощью генераторов.
у меня используются реальные потоки. хотелось приоритет устанавливать для них
Андрей Светлов
axe
Хотел было уже лезть смотреть документацию по pthread, чтобы к твоей дебане прикручивалось.
А потом вспомнил про GIL.
Вывод - оно тебе не надо на самом деле. Установкой приоритета потока самой по себе практически ничего не выиграть (а вот замедлить общую скорость выполнения можно легко). “В лоб” решать не стоит.
ZZZ
Андрей Светлов
А потом вспомнил про GIL.
Stackless Python никто не отменял. Если реално важна многопоточность, то лучше использовать его.
Андрей Светлов
Так то - вытесняющая мультипоточность. Штука безусловно интересная и полезная - но совершенно для других задач.
ZZZ
Ну может быть, спорить не буду, так как плохо знаю теорию темы. Просто тестировал в прошлом году скорость трёх потоков на двух ядрах в CPython и в Stackless – последний выиграл с хорошим отрывом. Если выберу время, покопаюсь на старой машине и выложу тесты с результатами.

А вообще, если бы вы в двух словах описали (у вас это очень хорошо получается!) чем “вытесняющая многовоточность” отличается от любой другой, то я был бы премного благодарен.
Андрей Светлов
В двух словах - нереально. Попробовал - не получилось.
Если совсем коротко - либо ты просишь систему явно переключиться на другой поток, либо она делает это переключение сама, никого не спрашивая.
Каждый подход накладывает массу ограничений.

Если нужно - опишу развернуто.
ZZZ
Не буду уж отвлекать вас…

Shiza в jabber
виндовс 3.1 помнишь? =)
Если всё верно, то я знаком с этим.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB