IPython ведет себя иначе, чем CPython при взаимодействии с расширением c - PullRequest
0 голосов
/ 26 июня 2018

Я разработал небольшое c-расширение Python с гибким сканером, которое прекрасно работает в CPython.Все мои тесты проходят.Но в IPython выходные данные отличаются или IPython умирает с ошибкой malloc всякий раз, когда я пытаюсь взаимодействовать с моим c-расширением.Когда я запускаю свое c-расширение с помощью valgrind, в Py_Initialize () отключаются многие потенциальные проблемы с памятью, но, похоже, ни одна из них не связана с моим кодом.Я также дважды проверил счетчик ссылок на мои объекты.Я использую anaconda на OS X с Python 3.6.5 Кто-нибудь понял, что может вызвать эту проблему или как отладить эту проблему?

Ошибка памяти, которую я получаю:

python(92795,0x7fff9ba8f380) malloc: *** error for object 0x7f9222845a40: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

1 Ответ

0 голосов
/ 01 июля 2018

Хорошо, это была моя собственная глупая ошибка. Я Python не использовал расширение c из conda env, но старая не правильно работающая версия моего расширения c.

...