Форум сайта python.su
есть ли возможность выставлять потокам приоритет выполнения?
Офлайн
В самом Питоне, насколько помню, нет. В winapi/pthread есть. Т.е. выкрутиться можно, но не всегда легко.
Офлайн
https://www.ibm.com/developerworks/ru/library/l-pythrd/
почитай варианты в саамом низу
Офлайн
приложение запускается под debian.
slav0nic, посмотрел статью. как понял, там вообще потоков как таковых нет. имитация потоков с помощью генераторов.
у меня используются реальные потоки. хотелось приоритет устанавливать для них
Офлайн
axe
Хотел было уже лезть смотреть документацию по pthread, чтобы к твоей дебане прикручивалось.
А потом вспомнил про GIL.
Вывод - оно тебе не надо на самом деле. Установкой приоритета потока самой по себе практически ничего не выиграть (а вот замедлить общую скорость выполнения можно легко). “В лоб” решать не стоит.
Офлайн
Андрей СветловStackless Python никто не отменял. Если реално важна многопоточность, то лучше использовать его.
А потом вспомнил про GIL.
Офлайн
Так то - вытесняющая мультипоточность. Штука безусловно интересная и полезная - но совершенно для других задач.
Офлайн
Ну может быть, спорить не буду, так как плохо знаю теорию темы. Просто тестировал в прошлом году скорость трёх потоков на двух ядрах в CPython и в Stackless – последний выиграл с хорошим отрывом. Если выберу время, покопаюсь на старой машине и выложу тесты с результатами.
А вообще, если бы вы в двух словах описали (у вас это очень хорошо получается!) чем “вытесняющая многовоточность” отличается от любой другой, то я был бы премного благодарен.
Офлайн
В двух словах - нереально. Попробовал - не получилось.
Если совсем коротко - либо ты просишь систему явно переключиться на другой поток, либо она делает это переключение сама, никого не спрашивая.
Каждый подход накладывает массу ограничений.
Если нужно - опишу развернуто.
Офлайн
Не буду уж отвлекать вас…
Shiza в jabberЕсли всё верно, то я знаком с этим.
виндовс 3.1 помнишь? =)
Офлайн