Espruino:Справочник по API/Класс process/memory(): различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) |
||
(не показаны 4 промежуточные версии 2 участников) | |||
Строка 3: | Строка 3: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=<ref>[https://www.espruino.com/Reference#l_process_memory www.espruino.com - process.memory()]</ref>= | =Функция process.memory()<ref>[https://www.espruino.com/Reference#l_process_memory www.espruino.com - process.memory()]</ref>= | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="javascript | <syntaxhighlight lang="javascript"> | ||
process.memory() | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 17: | Строка 17: | ||
==Возвращаемое значение== | ==Возвращаемое значение== | ||
Информацию об используемой памяти. | |||
==Описание== | |||
Запускает сеанс сборки мусора и возвращает объект с информацией об используемой памяти: | |||
* '''free''' – память, свободная для использования (в блоках) | |||
* '''usage''' – используемая память (в блоках) | |||
* '''total''' – общая память (в блоках) | |||
* '''history''' – память, используемая для истории команд. Если памяти мало, эта информация удаляется. Обратите внимание, этот эта цифра '''НЕ ВХОДИТ''' в значение в free | |||
* '''gc''' – память, очищенная во время этого сеанса сборки мусора | |||
* '''gctime''' – время, которое ушло на этот сеанс сборки мусора (в миллисекундах) | |||
* '''blocksize''' – размер блока (переменная) в байтах | |||
* '''stackEndAddress''' – (для ARM) адрес (его можно использовать в функциях типа peek/poke и т.д.) КОНЦА стека. Стек растет сверху вниз, так что его можно использовать только в том случае, если у вас мало рекурсий выше | |||
* '''flash_start''' – (для ARM) адрес начала flash-памяти (обычно '''0x8000000''') | |||
* '''flash_binary_end''' – (для ARM) адрес flash-памяти, где кончается прошивка [[Espruino]] | |||
* '''flash_code_start''' – (для ARM) адрес flash-памяти, где находятся страницы, хранящие любой код, который был сохранен с помощью [https://www.espruino.com/Reference#l__global_save save()] | |||
* '''flash_length''' – (для ARM) объем flash-памяти, который занимает прошивка (в байтах). Примечание: У некоторых STM32-чипов на самом деле больше памяти, чем рекламируется | |||
Единицы измерения памяти заданы в «блоках», каждый из которых составляет примерно 16 байт (зависит от используемого устройства). В принципе, размер блока можно всегда посмотреть в поле blocksize. Более подробно читайте в [http://www.espruino.com/Performance этой статье]. | |||
{{Примечание1|Чтобы найти свободные участки flash-памяти, используйте require('Flash').getFree().}} | |||
== Примеры == | == Примеры == | ||
Эта функция используется в следующих статьях документации [[Espruino]]: | |||
* [https://www.espruino.com/STM32F1Flash#line=13,24,27 Модуль для чтения flash-памяти чипа STM32F1] | |||
* [https://www.espruino.com/Assembler#line=139 Ассемблерная вставка] | |||
* [https://www.espruino.com/ESP8266_Flashing#line=55,111 Запись прошивки и использование ESP8266 вместе с Espruino] | |||
=См.также= | |||
=Внешние ссылки= | =Внешние ссылки= | ||
Строка 35: | Строка 54: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Espruino | {{Навигационная таблица/Портал/Espruino}} | ||
Текущая версия от 22:27, 22 июня 2023
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция process.memory()[1]
Синтаксис
process.memory()
Параметры
Возвращаемое значение
Информацию об используемой памяти.
Описание
Запускает сеанс сборки мусора и возвращает объект с информацией об используемой памяти:
- free – память, свободная для использования (в блоках)
- usage – используемая память (в блоках)
- total – общая память (в блоках)
- history – память, используемая для истории команд. Если памяти мало, эта информация удаляется. Обратите внимание, этот эта цифра НЕ ВХОДИТ в значение в free
- gc – память, очищенная во время этого сеанса сборки мусора
- gctime – время, которое ушло на этот сеанс сборки мусора (в миллисекундах)
- blocksize – размер блока (переменная) в байтах
- stackEndAddress – (для ARM) адрес (его можно использовать в функциях типа peek/poke и т.д.) КОНЦА стека. Стек растет сверху вниз, так что его можно использовать только в том случае, если у вас мало рекурсий выше
- flash_start – (для ARM) адрес начала flash-памяти (обычно 0x8000000)
- flash_binary_end – (для ARM) адрес flash-памяти, где кончается прошивка Espruino
- flash_code_start – (для ARM) адрес flash-памяти, где находятся страницы, хранящие любой код, который был сохранен с помощью save()
- flash_length – (для ARM) объем flash-памяти, который занимает прошивка (в байтах). Примечание: У некоторых STM32-чипов на самом деле больше памяти, чем рекламируется
Единицы измерения памяти заданы в «блоках», каждый из которых составляет примерно 16 байт (зависит от используемого устройства). В принципе, размер блока можно всегда посмотреть в поле blocksize. Более подробно читайте в этой статье.
Примеры
Эта функция используется в следующих статьях документации Espruino:
- Модуль для чтения flash-памяти чипа STM32F1
- Ассемблерная вставка
- Запись прошивки и использование ESP8266 вместе с Espruino
См.также
Внешние ссылки