Как я узнаю то, что все символы экспортируются из общего объекта?

Вы хотели бы использовать __slots__, если Вы собираетесь инстанцировать много (сотни, тысячи) объектов того же класса. __slots__ только существует как инструмент оптимизации памяти.

Этому высоко препятствуют для использования __slots__ для ограничения создания атрибута, и в целом Вы хотите избежать его, потому что это повреждает рассол, наряду с некоторыми другими функциями самоанализа Python.

123
задан chappar 6 August 2009 в 08:21
поделиться

5 ответов

Есть ли у вас «общий объект» (обычно это общая библиотека в AIX), разделяемая библиотека UNIX или Windows DLL? Все это разные вещи, и ваш вопрос объединяет их все: - (

  • Для общего объекта AIX используйте dump -Tv /path/to/foo.o[1116223 sizes.
  • Для общего ELF библиотеку, используйте readelf -Ws /path/to/libfoo.so или (если у вас GNU nm) nm -D /path/to/libfoo.so[1116227estive.
  • Для разделяемой библиотеки UNIX, отличной от ELF, укажите , которая UNIX вас интересует.
  • Для Windows DLL используйте dumpbin / EXPORTS foo.dll .
199
ответ дан 24 November 2019 в 01:13
поделиться

см. man nm

GNU nm перечисляет символы из объектных файлов objfile .... Если нет объекта файлы перечислены как аргументы, nm предполагает файл a.out.
8
ответ дан 24 November 2019 в 01:13
поделиться

Обычно у вас также есть файл заголовка, который вы включаете в свой код для доступа к символам.

0
ответ дан 24 November 2019 в 01:13
поделиться

objdump - еще один хороший инструмент для Linux.

21
ответ дан 24 November 2019 в 01:13
поделиться

При проверке * nix nm. В Windows используйте программу Dependency Walker

12
ответ дан 24 November 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: