Узнайте, сколько памяти используется объектом в Python [дубликат]

Создайте статический член в своем классе Activity. Затем назначьте значение во время onPostExecute

Например, если результат вашей AsyncTask является строкой, создайте в своей активности статическую строку public

public static String dataFromAsyncTask;

Затем в onPostExecute AsyncTask просто сделайте статический вызов вашему основному классу и установите значение.

MainActivity.dataFromAsyncTask = "result blah";

195
задан Honest Abe 9 March 2014 в 12:17
поделиться

2 ответа

нет никакого простого способа узнать емкость памяти объекта Python . Одна из проблем, которые можно найти, - то, что Python возражает - как списки, и dicts - может иметь ссылки на другие объекты Python (в этом случае, каков размер был бы? Размер, содержащий размер каждого объекта или нет?). Существуют некоторые указатели служебные и внутренние структуры, связанные с типами объектов и сборкой "мусора". Наконец, некоторые объекты Python имеют неочевидные поведения. Например, списки резервируют пространство для большего количества объектов, чем они имеют большую часть времени; dicts еще более сложны, так как они могут работать по-разному (у них есть различная реализация для небольшого количества ключей, и иногда они выделяют записи).

существует большой блок кода обновил большой блок кода ) там, чтобы попытаться лучше всего приблизить размер объекта Python в памяти.

можно также хотеть проверить [приблизительно 112] старое описание о PyObject (внутренняя структура C, которая представляет фактически все объекты Python).

102
ответ дан Rob 23 November 2019 в 05:22
поделиться

У меня нет личного опыта ни с одним из следующих, но простого поиска "Python [память] профилировщик" урожай:

  • PySizer, "профилировщик памяти для Python", найденный в http://pysizer.8325.org/ . Однако страница, кажется, указывает, что проект не был обновлен некоторое время и относится к...

  • Бесформенный, "поддержка [луг] отладка и оптимизация относительно связанных с памятью проблем в программах Python", найденный в http://guppy-pe.sourceforge.net/#Heapy .

Hope, которая помогает.

4
ответ дан jcsalterego 23 November 2019 в 05:22
поделиться
Другие вопросы по тегам:

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