Абстрактная операция AddToKeptObjects (Добавить к сохраненным объектам) принимает аргумент object (Object). При вызове она выполняет следующие шаги: 1. Пусть agentRecord будет записью агента окружающего агента. 2. Добавить object в agentRecord.[[KeptAlive]]. Примечание Когда абстрактная операция AddToKeptObjects вызывается со ссылкой на целевой объект, она добавляет цель в список, который будет строго указывать […]
Архивы по дням: 16.04.2021
Абстрактная операция ClearKeptObjects (Очистить сохраненные объекты) не принимает аргументов. Ожидается, что реализации ECMAScript вызовут ClearKeptObjects после завершения синхронной последовательности выполнения ECMAScript. При вызове он выполняет следующие шаги: 1. Пусть agentRecord будет записью агента окружающего агента. 2. Установите agentRecord.[[KeptAlive]] в новый пустой Список. Информационные ссылки Предыдущая тема — ECMAScript | […]
Цели Эта спецификация не дает никаких гарантий, что какой-либо объект будет удален сборщиком мусора. Нерабочие объекты могут быть освобождены по прошествии длительного времени или вообще никогда. По этой причине в данной спецификации используется термин «может» (may) при описании поведения, вызванного сборкой мусора. Семантика объектов WeakRef и FinalizationRegistry основана на двух […]
Чтобы агент продвинулся вперед (make forward progress), он должен выполнить этап оценки в соответствии с этой спецификацией. Агент блокируется (blocked), когда его работающий (текущий) контекст выполнения синхронно и неопределенно долго ожидает внешнего события. В этом смысле могут быть заблокированы только агенты, у которых свойство [[CanBlock]] записи агента равно true. Незаблокированный […]
Кластер агентов (agent cluster) — это максимальный набор агентов, которые могут взаимодействовать, работая с общей памятью. Примечание 1 Программы в разных агентах могут совместно использовать память неуказанными способами. Как минимум, резервная память для объектов SharedArrayBuffer может совместно использоваться агентами в кластере. Могут быть агенты, которые могут общаться посредством передачи […]
Агент (agent) включает набор контекстов выполнения ECMAScript, стек контекстов выполнения, текущий контекст выполнения, запись агента (Agent Record) и выполняемый поток (executing thread). За исключением исполняемого потока, компоненты агента принадлежат исключительно этому агенту. Выполняемый поток агента выполняет задание в контекстах выполнения агента независимо от других агентов, за исключением того, что выполняющийся […]