Утечки ссылок в nanobind на стороне C++ при выходе из PythonC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Утечки ссылок в nanobind на стороне C++ при выходе из Python

Сообщение Anonymous »

Предположим, что у нас есть три класса C++ A, B и C.
  • Класс C имеет несколько чисел с плавающей запятой.
  • Класс B содержит несколько экземпляров класса C в качестве переменных-членов.
  • Класс A содержит необработанные указатели на экземпляры класса B и некоторые векторы, содержащие копии экземпляров класса C в классе B.
Эти классы доступны стороне Python с использованием нанобинда. В Python я создал два класса pA и pB, которые обертывают A и B, чтобы действовать как заглушка и включать некоторые функциональные возможности только Python.
Проблема в том, что при выходе из Python nanobind сообщает, что все экземпляры A и B (выделенные классами Python pA и pB) просочились, а также целый набор функций. Я применил решение, написанное в документации nanobind, к классу A, но утечка экземпляров класса A все еще существует.
Как мне действовать и что насчет загадочных утечек функций?

Подробнее здесь: https://stackoverflow.com/questions/798 ... thon-exits
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»