Я недавно начал использовать apache parquet cpp.Я собрал файл .so, следуя процедуре, и смог прочитать данные, используя предоставленный API.
Недавно, когда я обновил основную библиотеку, чтобы переопределить оператор new / delete, я столкнулся с проблемами.
Анализ выглядит следующим образом: моя основная программа запрашивает apache cpp для предоставления мне RowGroupMetadata.Эти RowGroupMetadata выделены на помощь libparquet.so.Эта библиотека при выделении объекта возвращает умный указатель на выделенный объект.
Теперь, выходя из области действия текущей функции, вызывается delete для возвращенного выше объекта.Но так как в моей библиотеке я перегружен удалением, интеллектуальное удаление указателя переходит к моей пользовательской функции удаления, и там происходит сбой.
Эта проблема возникает, потому что apache parquet cpp использует кучу для выделения памяти, а моя основная библиотека использует свое собственное пространство в куче.
Есть ли способ преодолеть эту проблему?Любой совет действительно ценится.