Я пытался пойти по этому пути несколько месяцев назад и решил, что это не стоит усилий.
Мне удалось запустить бинарную установку PyQt (в Windows) против бесстековой версии Python, но я обнаружил, что мне пришлось вручную зайти и изменить некоторые файлы. Я получал сообщение об ошибке (извините, я забыл, что это было), и поиск в Google привел к решению, которое было несколько лет назад. Более новый код не включал старое исправление, поэтому изменение было не слишком сложным и (если я правильно помню) оно было на питоне, поэтому перекомпиляция не понадобилась.
Но это было для меня нарушителем условий сделки. Обновления Qt выходят регулярно, как и обновления PyQt, и я не хотел постоянно исправлять код. Stackless и PyQt просто недостаточно используются вместе, чтобы их можно было тщательно проверить. Я обнаружил, что риск сложно отлаживать проблемы довольно высок. Это особенно верно, учитывая, что автор stackless перешел на PyPy. Позвольте мне заранее извиниться - я хотел бы, чтобы у меня были ссылки, которые я нашел для автора, останавливающего разработку на Python без стека, и более подробная информация об ошибках, которые мне пришлось исправить - я не ожидал, что извергну подробности о переполнении стека.
Поэтому я решил запустить PyQt на ванильном Python, а не без стека.
Кстати, я также подумал, что смешивание сигналов/слотов с бесстековым кодом может привести к путанице, поскольку это совершенно разные методы решения проблем многопоточности.
Удачи!
person
Brett Stottlemyer
schedule
12.01.2010