Spec-Zone.ru › Elisp

Тип финализатора

Объект финализатора помогает коду Lisp очистить объекты, которые больше не нужны. Финализатор содержит объект функции Lisp. Когда объект финализатора становится недоступным после прохода сборки мусора, Emacs вызывает связанный с ним объект функции. При определении доступности финализатора Emacs не учитывает ссылки от самих объектов финализаторов, позволяя использовать финализаторы, не беспокоясь о случайном захвате ссылок на сами завершенные объекты.

Ошибки в финализаторах выводятся в *Messages*. Emacs выполняет связанную с объектом финализатора функцию ровно один раз, даже если эта функция завершается ошибкой.

Функция: make-finalizer function

Создаёт финализатор, который будет выполнять function. function будет вызван после сборки мусора, когда возвращённый объект финализатора станет недоступным. Если объект финализатора доступен только через ссылки от объектов финализаторов, он не считается доступным для определения необходимости выполнения function. function будет выполняться один раз на каждый объект финализатора.

Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Finalizer-Type.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API