LazyThreadSafetyMode

enum class LazyThreadSafetyMode (source)

Specifies how a Lazy instance synchronizes initialization among multiple threads.

Enum Values

SYNCHRONIZED

Locks are used to ensure that only a single thread can initialize the Lazy instance.

PUBLICATION

Initializer function can be called several times on concurrent access to uninitialized Lazy instance value, but only the first returned value will be used as the value of Lazy instance.

NONE

No locks are used to synchronize an access to the Lazy instance value; if the instance is accessed from multiple threads, its behavior is undefined.

Inherited Properties

name

val name: String

Returns the name of this enum constant, exactly as declared in its enum declaration.

ordinal

val ordinal: Int

Returns the ordinal of this enumeration constant (its position in its enum declaration, where the initial constant is assigned an ordinal of zero).

Inherited Functions

clone

fun clone(): Any

Throws an exception since enum constants cannot be cloned. This method prevents enum classes from inheriting from Cloneable.

compareTo

fun compareTo(other: E): Int

Compares this object with the specified object for order. Returns zero if this object is equal to the specified other object, a negative number if it's less than other, or a positive number if it's greater than other.

equals

fun equals(other: Any?): Boolean

Indicates whether some other object is "equal to" this one. Implementations must fulfil the following requirements:

hashCode

fun hashCode(): Int

Returns a hash code value for the object. The general contract of hashCode is:

toString

open fun toString(): String

Returns a string representation of the object.