Elide не основан на V8, но предоставляет небольшой набор функций совместимости для пакетов, которые изучают статистику кучи или сериализуют простые данные.
| Операция | Поведение |
|---|---|
cachedDataVersionTag() | Возвращает стабильный 32-битный тег для работающего бинарного файла. |
getHeapStatistics() | Возвращает объект статистики кучи в формате Node. |
getHeapSpaceStatistics() | Возвращает по одной записи на каждый пул памяти среды выполнения. |
setFlagsFromString(flags) | Принимает строку и больше ничего не делает. |
serialize(value) | Кодирует JSON.stringify(value) в UTF-8 в Uint8Array. |
deserialize(buffer) | Декодирует UTF-8 и разбирает полезные данные JSON. |
Имена пулов — это имена среды выполнения, например eden space, а не имена V8.
const v8 = require("node:v8");
const bytes = v8.serialize({ hello: "world" });
v8.deserialize(bytes); // { hello: "world" }Сериализация имеет семантику JSON. Она несовместима с форматом structured clone
из V8, а циклические объекты приводят к TypeError.
См. также
Reference
Status: Partial · Not measured · since 1.1.0
Exports
| Export | Kind | Status | Notes |
|---|---|---|---|
getHeapStatistics() | function | Full | Returns an object with V8 heap statistics |
getHeapSpaceStatistics() | function | Full | Returns statistics about V8 heap spaces |
setFlagsFromString() | function | Full | Set additional V8 command-line flags |
serialize() | function | Full | Serializes a value into a buffer |
deserialize() | function | Full | Reads a value written by serialize() from a buffer |
Not implemented
DefaultDeserializer, DefaultSerializer, Deserializer, GCProfiler, Serializer, getCppHeapStatistics, getHeapCodeStatistics, getHeapSnapshot, isStringOneByteRepresentation, promiseHooks, queryObjects, setHeapSnapshotNearHeapLimit, startCpuProfile, startHeapProfile, startupSnapshot, stopCoverage, takeCoverage, writeHeapSnapshot.