Pull to refresh

Comments 4

Лучше расскажите как такое отлаживать. Вот у вас что-то в плюсовой библиотеке сегфолтнуло, вы достаете дебаггер чтобы узнать, в каком месте произошел вход в бибилиотеку... А там только питоновые потроха. Как с этим жить?

На самом деле есть пример на YouTube, как разработчик Ogre 3D(игровой движок), показывает как с помощью visual studio такие симбиозы можно отлаживать.

https://youtu.be/P9edayG8rkg?si=9yhlsgKvc8ze92_q

Компилировать код без оптимизаций и с отладочной информацией, а в gdb/lldb/visual studio запускать питон. Примерно так.

Статья является следствием полученного личностного опыта

Привет всем.

Мой опыт использования pybind11 в плюсовом проекте:

-на таком встроенном питоне сложную логику писать и отлаживать очень тяжело (с вызовами pandas, например)

-все данные к нему должны приходить из того же потока, в котором он работает, были тоже с этим проблемы, решались какими-то костылями

-перевод структур из плюсов в питон и обратно тоже гемор

-память отжирал, уже не помню чем решилось, мбыть и так осталось

В общем, что в итоге. Убрали его полностью из проекта, теперь питон работает отдельно, дергаем его по сети, все хорошо.

Вывод, лучше не надо использовать pybind11. Ну или в крайнем случае для мелочи какой-то (тогда почему не на плюсах).

Sign up to leave a comment.

Articles