LazyInitializer.EnsureInitialized LazyInitializer.EnsureInitialized LazyInitializer.EnsureInitialized LazyInitializer.EnsureInitialized Method

Définition

Initialise un type cible si ce n'est pas déjà fait.Initializes a target type if it hasn't already been initialized.

Surcharges

EnsureInitialized<T>(T) EnsureInitialized<T>(T) EnsureInitialized<T>(T) EnsureInitialized<T>(T)

Initialise un type référence cible avec le constructeur sans paramètre du type, s’il n’a pas déjà été initialisé.Initializes a target reference type with the type's parameterless constructor if it hasn't already been initialized.

EnsureInitialized<T>(T, Func<T>) EnsureInitialized<T>(T, Func<T>) EnsureInitialized<T>(T, Func<T>) EnsureInitialized<T>(T, Func<T>)

Initialise un type référence cible à l'aide d'une fonction spécifiée s'il n'a pas déjà été initialisé.Initializes a target reference type by using a specified function if it hasn't already been initialized.

EnsureInitialized<T>(T, Boolean, Object) EnsureInitialized<T>(T, Boolean, Object) EnsureInitialized<T>(T, Boolean, Object) EnsureInitialized<T>(T, Boolean, Object)

Initialise un type référence cible ou un type valeur avec son constructeur sans paramètre, s’il n’a pas déjà été initialisé.Initializes a target reference or value type with its parameterless constructor if it hasn't already been initialized.

EnsureInitialized<T>(T, Object, Func<T>) EnsureInitialized<T>(T, Object, Func<T>) EnsureInitialized<T>(T, Object, Func<T>) EnsureInitialized<T>(T, Object, Func<T>)

Initialise un type référence cible ou avec une fonction spécifiée s’il n’a pas déjà été initialisé.Initializes a target reference type with a specified function if it has not already been initialized.

EnsureInitialized<T>(T, Boolean, Object, Func<T>) EnsureInitialized<T>(T, Boolean, Object, Func<T>) EnsureInitialized<T>(T, Boolean, Object, Func<T>) EnsureInitialized<T>(T, Boolean, Object, Func<T>)

Initialise un type référence cible ou un type valeur à l'aide d'une fonction spécifiée s'il n'a pas déjà été initialisé.Initializes a target reference or value type by using a specified function if it hasn't already been initialized.

EnsureInitialized<T>(T) EnsureInitialized<T>(T) EnsureInitialized<T>(T) EnsureInitialized<T>(T)

Initialise un type référence cible avec le constructeur sans paramètre du type, s’il n’a pas déjà été initialisé.Initializes a target reference type with the type's parameterless constructor if it hasn't already been initialized.

public:
generic <typename T>
 where T : class static T EnsureInitialized(T % target);
public static T EnsureInitialized<T> (ref T target) where T : class;
static member EnsureInitialized : 'T -> 'T (requires 'T : null)
Public Shared Function EnsureInitialized(Of T As Class) (ByRef target As T) As T

Paramètres de type

T

Type de la référence à initialiser.The type of the reference to be initialized.

Paramètres

target
T T T T

Référence à initialiser si elle ne l’a pas déjà été.A reference to initialize if it has not already been initialized.

Retours

T T T T

Objet initialisé.The initialized object.

Exceptions

Autorisations pour accéder au constructeur de type T manquant.Permissions to access the constructor of type T were missing.

Le type T n’a pas de constructeur sans paramètre.Type T does not have a parameterless constructor.

Remarques

Cette méthode ne peut être utilisée que sur des types référence.This method may only be used on reference types. Pour garantir l’initialisation des types valeur, consultez les autres surcharges EnsureInitializedde.To ensure initialization of value types, see other overloads of EnsureInitialized.

Cette méthode peut être utilisée simultanément par plusieurs threads à initialiser target.This method may be used concurrently by multiple threads to initialize target.

Dans le cas où plusieurs threads accèdent simultanément à cette méthode, plusieurs T instances de peuvent être créées, mais une seule instance sera targetstockée dans.In the event that multiple threads access this method concurrently, multiple instances of T may be created, but only one will be stored into target. Dans ce type d’occurrence, cette méthode ne supprime pas les objets qui n’ont pas été stockés.In such an occurrence, this method will not dispose of the objects that were not stored. Si ces objets doivent être supprimés, il revient à l’appelant de déterminer si un objet n’a pas été utilisé et de supprimer l’objet de façon appropriée.If such objects must be disposed, it is up to the caller to determine if an object was not used and to then dispose of the object appropriately.

Voir aussi

EnsureInitialized<T>(T, Func<T>) EnsureInitialized<T>(T, Func<T>) EnsureInitialized<T>(T, Func<T>) EnsureInitialized<T>(T, Func<T>)

Initialise un type référence cible à l'aide d'une fonction spécifiée s'il n'a pas déjà été initialisé.Initializes a target reference type by using a specified function if it hasn't already been initialized.

public:
generic <typename T>
 where T : class static T EnsureInitialized(T % target, Func<T> ^ valueFactory);
public static T EnsureInitialized<T> (ref T target, Func<T> valueFactory) where T : class;
static member EnsureInitialized : 'T * Func<'T (requires 'T : null)> -> 'T (requires 'T : null)
Public Shared Function EnsureInitialized(Of T As Class) (ByRef target As T, valueFactory As Func(Of T)) As T

Paramètres de type

T

Type de la référence à initialiser.The type of the reference to be initialized.

Paramètres

target
T T T T

Référence à initialiser si elle ne l’a pas déjà été.The reference to initialize if it hasn't already been initialized.

valueFactory
Func<T>

Fonction appelée pour initialiser la référence.The function that is called to initialize the reference.

Retours

T T T T

Objet initialisé.The initialized object.

Exceptions

Le type T n’a pas de constructeur sans paramètre.Type T does not have a parameterless constructor.

valueFactory a retourné null (Nothing en Visual Basic).valueFactory returned null (Nothing in Visual Basic).

Remarques

Cette méthode peut être utilisée uniquement sur les types référence et valueFactory ne peut pas retourner une référence null (Nothing dans Visual Basic).This method may only be used on reference types, and valueFactory may not return a null reference (Nothing in Visual Basic). Pour garantir l’initialisation des types valeur ou pour autoriser les types référence null, consultez autres surcharges de EnsureInitialized.To ensure initialization of value types or to allow null reference types, see other overloads of EnsureInitialized.

Cette méthode peut être utilisée simultanément par plusieurs threads à initialiser target.This method may be used concurrently by multiple threads to initialize target.

Dans le cas où plusieurs threads accèdent simultanément à cette méthode, plusieurs T instances de peuvent être créées, mais une seule instance sera targetstockée dans.In the event that multiple threads access this method concurrently, multiple instances of T may be created, but only one will be stored into target. Dans ce type d’occurrence, cette méthode ne supprime pas les objets qui n’ont pas été stockés.In such an occurrence, this method will not dispose of the objects that were not stored. Si ces objets doivent être supprimés, il revient à l’appelant de déterminer si un objet n’a pas été utilisé et de supprimer l’objet de façon appropriée.If such objects must be disposed, it is up to the caller to determine if an object was not used and to then dispose of the object appropriately.

Voir aussi

EnsureInitialized<T>(T, Boolean, Object) EnsureInitialized<T>(T, Boolean, Object) EnsureInitialized<T>(T, Boolean, Object) EnsureInitialized<T>(T, Boolean, Object)

Initialise un type référence cible ou un type valeur avec son constructeur sans paramètre, s’il n’a pas déjà été initialisé.Initializes a target reference or value type with its parameterless constructor if it hasn't already been initialized.

public:
generic <typename T>
 static T EnsureInitialized(T % target, bool % initialized, System::Object ^ % syncLock);
public static T EnsureInitialized<T> (ref T target, ref bool initialized, ref object syncLock);
static member EnsureInitialized : 'T * bool * obj -> 'T
Public Shared Function EnsureInitialized(Of T) (ByRef target As T, ByRef initialized As Boolean, ByRef syncLock As Object) As T

Paramètres de type

T

Type de la référence à initialiser.The type of the reference to be initialized.

Paramètres

target
T T T T

Référence ou valeur de type T à initialiser si elle ne l’a pas déjà été.A reference or value of type T to initialize if it hasn't already been initialized.

initialized
Boolean Boolean Boolean Boolean

Référence à une valeur booléenne qui détermine si la cible a déjà été initialisée.A reference to a Boolean value that determines whether the target has already been initialized.

syncLock
Object Object Object Object

Référence à un objet utilisé comme verrou mutuellement exclusif pour l'initialisation de target.A reference to an object used as the mutually exclusive lock for initializing target. Si syncLock est null null, un nouvel objet est instancié.If syncLock is null, a new object will be instantiated.

Retours

T T T T

Objet initialisé.The initialized object.

Exceptions

Autorisations pour accéder au constructeur de type T manquant.Permissions to access the constructor of type T were missing.

Le type T n’a pas de constructeur sans paramètre.Type T does not have a parameterless constructor.

Remarques

Si initialized est spécifié comme true, aucune initialisation supplémentaire ne se produit.If initialized is specified as true, then no further initialization occurs.

Voir aussi

EnsureInitialized<T>(T, Object, Func<T>) EnsureInitialized<T>(T, Object, Func<T>) EnsureInitialized<T>(T, Object, Func<T>) EnsureInitialized<T>(T, Object, Func<T>)

Initialise un type référence cible ou avec une fonction spécifiée s’il n’a pas déjà été initialisé.Initializes a target reference type with a specified function if it has not already been initialized.

public:
generic <typename T>
 where T : class static T EnsureInitialized(T % target, System::Object ^ % syncLock, Func<T> ^ valueFactory);
public static T EnsureInitialized<T> (ref T target, ref object syncLock, Func<T> valueFactory) where T : class;
static member EnsureInitialized : 'T * obj * Func<'T (requires 'T : null)> -> 'T (requires 'T : null)
Public Shared Function EnsureInitialized(Of T As Class) (ByRef target As T, ByRef syncLock As Object, valueFactory As Func(Of T)) As T

Paramètres de type

T

Type de la référence à initialiser.The type of the reference to be initialized.

Paramètres

target
T T T T

Référence à initialiser si elle ne l’a pas déjà été.A reference to initialize if it has not already been initialized.

syncLock
Object Object Object Object

Référence à un objet utilisé comme verrou mutuellement exclusif pour l'initialisation de target.A reference to an object used as the mutually exclusive lock for initializing target. Si syncLock est null null, un nouvel objet est instancié.If syncLock is null, a new object will be instantiated.

valueFactory
Func<T>

Méthode à appeler pour initialiser target.The method to invoke to initialize target.

Retours

T T T T

Objet initialisé.The initialized object.

EnsureInitialized<T>(T, Boolean, Object, Func<T>) EnsureInitialized<T>(T, Boolean, Object, Func<T>) EnsureInitialized<T>(T, Boolean, Object, Func<T>) EnsureInitialized<T>(T, Boolean, Object, Func<T>)

Initialise un type référence cible ou un type valeur à l'aide d'une fonction spécifiée s'il n'a pas déjà été initialisé.Initializes a target reference or value type by using a specified function if it hasn't already been initialized.

public:
generic <typename T>
 static T EnsureInitialized(T % target, bool % initialized, System::Object ^ % syncLock, Func<T> ^ valueFactory);
public static T EnsureInitialized<T> (ref T target, ref bool initialized, ref object syncLock, Func<T> valueFactory);
static member EnsureInitialized : 'T * bool * obj * Func<'T> -> 'T
Public Shared Function EnsureInitialized(Of T) (ByRef target As T, ByRef initialized As Boolean, ByRef syncLock As Object, valueFactory As Func(Of T)) As T

Paramètres de type

T

Type de la référence à initialiser.The type of the reference to be initialized.

Paramètres

target
T T T T

Référence ou valeur de type T à initialiser si elle ne l’a pas déjà été.A reference or value of type T to initialize if it hasn't already been initialized.

initialized
Boolean Boolean Boolean Boolean

Référence à une valeur booléenne qui détermine si la cible a déjà été initialisée.A reference to a Boolean value that determines whether the target has already been initialized.

syncLock
Object Object Object Object

Référence à un objet utilisé comme verrou mutuellement exclusif pour l'initialisation de target.A reference to an object used as the mutually exclusive lock for initializing target. Si syncLock est null null, un nouvel objet est instancié.If syncLock is null, a new object will be instantiated.

valueFactory
Func<T>

Fonction appelée pour initialiser la référence ou la valeur.The function that is called to initialize the reference or value.

Retours

T T T T

Objet initialisé.The initialized object.

Exceptions

Autorisations pour accéder au constructeur de type T manquant.Permissions to access the constructor of type T were missing.

Le type T n’a pas de constructeur sans paramètre.Type T does not have a parameterless constructor.

Remarques

Si initialized est spécifié comme true, aucune initialisation supplémentaire ne se produit.If initialized is specified as true, then no further initialization occurs.

Voir aussi

S’applique à