class FinalizationRegistry[-A, -B, -C] extends Object
ECMAScript 2021
A FinalizationRegistry object lets you request a callback when an object is garbage-collected.
FinalizationRegistry provides a way to request that a cleanup callback get called at some point when an object registered with the registry has been reclaimed (garbage-collected). (Cleanup callbacks are sometimes called finalizers.)
MDN
- A
Type of the target object to register
- B
Type of value to pass to the finalizer
- C
Type of an unregistration token
- Alphabetic
- By Inheritance
- FinalizationRegistry
- Object
- Any
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: scala.Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to any2stringadd[FinalizationRegistry[A, B, C]] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (FinalizationRegistry[A, B, C], B)
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to ArrowAssoc[FinalizationRegistry[A, B, C]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: scala.Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
ensuring(cond: (FinalizationRegistry[A, B, C]) ⇒ Boolean, msg: ⇒ scala.Any): FinalizationRegistry[A, B, C]
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to Ensuring[FinalizationRegistry[A, B, C]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (FinalizationRegistry[A, B, C]) ⇒ Boolean): FinalizationRegistry[A, B, C]
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to Ensuring[FinalizationRegistry[A, B, C]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ scala.Any): FinalizationRegistry[A, B, C]
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to Ensuring[FinalizationRegistry[A, B, C]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): FinalizationRegistry[A, B, C]
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to Ensuring[FinalizationRegistry[A, B, C]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: scala.Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hasOwnProperty(v: String): Boolean
Tests whether this object has the specified property as a direct property.
Tests whether this object has the specified property as a direct property.
Unlike js.Object.hasProperty, this method does not check down the object's prototype chain.
MDN
- Definition Classes
- Object
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isPrototypeOf(v: Object): Boolean
Tests whether this object is in the prototype chain of another object.
Tests whether this object is in the prototype chain of another object.
- Definition Classes
- Object
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
propertyIsEnumerable(v: String): Boolean
Tests whether the specified property in an object can be enumerated by a call to js.Object.properties, with the exception of properties inherited through the prototype chain.
Tests whether the specified property in an object can be enumerated by a call to js.Object.properties, with the exception of properties inherited through the prototype chain.
If the object does not have the specified property, this method returns false.
MDN
- Definition Classes
- Object
-
def
register(theObject: A, heldValue: B): Unit
The
register
method registers an object with a FinalizationRegistry instance so that if the object is garbage-collected, the registry's callback may get called.The
register
method registers an object with a FinalizationRegistry instance so that if the object is garbage-collected, the registry's callback may get called.- theObject
The target object to register.
- heldValue
The value to pass to the finalizer for this object. This cannot be the target object.
-
def
register(theObject: A, heldValue: B, unregistrationToken: C): Unit
The
register
method registers an object with a FinalizationRegistry instance so that if the object is garbage-collected, the registry's callback may get called.The
register
method registers an object with a FinalizationRegistry instance so that if the object is garbage-collected, the registry's callback may get called.- theObject
The target object to register.
- heldValue
The value to pass to the finalizer for this object. This cannot be the target object.
- unregistrationToken
A token that may be used with the
unregister
method later to unregister the target object. If provided (and notundefined
), this must be an object. If not provided, the target cannot be unregistered.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toLocaleString(): String
- Definition Classes
- Object
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
unregister(unregistrationToken: C): Boolean
The
unregister
unregisters a target object from a
FinalizationRegistryinstance.
The
unregister
unregisters a target object from a
FinalizationRegistryinstance.
When a target object has been reclaimed, it is no longer registered in the registry. There is no need to all
unregister
in your cleanup callback. Only callunregister
if you haven't received a cleanup callback and no longer need to receive one.- unregistrationToken
The token used with the register method when registering the target object.
-
def
valueOf(): scala.Any
- Definition Classes
- Object
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
→[B](y: B): (FinalizationRegistry[A, B, C], B)
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to ArrowAssoc[FinalizationRegistry[A, B, C]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
Deprecated Value Members
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from FinalizationRegistry[A, B, C] to StringFormat[FinalizationRegistry[A, B, C]] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.