Mutex.TryOpenExisting Mutex.TryOpenExisting Mutex.TryOpenExisting Mutex.TryOpenExisting Method

Définition

Ouvre un mutex nommé spécifié, s'il existe déjà, et retourne une valeur indiquant si l'opération a réussi.Opens a specified named mutex, if it already exists, and returns a value that indicates whether the operation succeeded.

Surcharges

TryOpenExisting(String, Mutex) TryOpenExisting(String, Mutex) TryOpenExisting(String, Mutex) TryOpenExisting(String, Mutex)

Ouvre le mutex nommé spécifié, s'il existe déjà, et retourne une valeur indiquant si l'opération a réussi.Opens the specified named mutex, if it already exists, and returns a value that indicates whether the operation succeeded.

TryOpenExisting(String, MutexRights, Mutex) TryOpenExisting(String, MutexRights, Mutex) TryOpenExisting(String, MutexRights, Mutex) TryOpenExisting(String, MutexRights, Mutex)

Ouvre le mutex nommé spécifié, s'il existe déjà, avec l'accès de sécurité souhaité, puis retourne une valeur indiquant si l'opération a réussi.Opens the specified named mutex, if it already exists, with the desired security access, and returns a value that indicates whether the operation succeeded.

TryOpenExisting(String, Mutex) TryOpenExisting(String, Mutex) TryOpenExisting(String, Mutex) TryOpenExisting(String, Mutex)

Ouvre le mutex nommé spécifié, s'il existe déjà, et retourne une valeur indiquant si l'opération a réussi.Opens the specified named mutex, if it already exists, and returns a value that indicates whether the operation succeeded.

public:
 static bool TryOpenExisting(System::String ^ name, [Runtime::InteropServices::Out] System::Threading::Mutex ^ % result);
[System.Security.SecurityCritical]
public static bool TryOpenExisting (string name, out System.Threading.Mutex result);
static member TryOpenExisting : string *  -> bool
Public Shared Function TryOpenExisting (name As String, ByRef result As Mutex) As Boolean

Paramètres

name
String String String String

Nom du mutex système à ouvrir.The name of the system mutex to open.

result
Mutex Mutex Mutex Mutex

Quand cette méthode est retournée, contient un objet Mutex qui représente la structure mutex nommée si l'appel a réussi, ou null si l'appel a échoué.When this method returns, contains a Mutex object that represents the named mutex if the call succeeded, or null if the call failed. Ce paramètre est traité comme étant non initialisé.This parameter is treated as uninitialized.

Retours

true si le mutex nommé a été ouvert ; sinon, false.true if the named mutex was opened successfully; otherwise, false.

Exceptions

name est une chaîne vide.name is an empty string.

ou-or- name fait plus de 260 caractères.name is longer than 260 characters.

Une erreur Win32 s’est produite.A Win32 error occurred.

Le mutex nommé existe, mais l’utilisateur ne dispose pas de l’accès de sécurité nécessaire pour l’utiliser.The named mutex exists, but the user does not have the security access required to use it.

Remarques

Si le mutex nommé n’existe pas, cette méthode ne le crée pas.If the named mutex does not exist, this method does not create it. Pour créer le mutex système lorsqu’il n’existe pas déjà, utilisez une de la Mutex constructeurs qui a un name paramètre.To create the system mutex when it does not already exist, use one of the Mutex constructors that has a name parameter.

Si vous ne savez pas si un mutex nommé existe, utilisez cette surcharge de méthode au lieu du OpenExisting(String) surcharge de méthode qui lève une exception si le mutex n’existe pas.If you are uncertain whether a named mutex exists, use this method overload instead of the OpenExisting(String) method overload, which throws an exception if the mutex does not exist.

Plusieurs appels à cette méthode qui utilisent la même valeur pour name ne retournent pas nécessairement le même Mutex de l’objet, même si les objets retournés représentent le même mutex système nommé.Multiple calls to this method that use the same value for name do not necessarily return the same Mutex object, even though the objects that are returned represent the same named system mutex.

Cette surcharge de méthode revient à appeler le TryOpenExisting(String, MutexRights, Mutex) surcharge de méthode et en spécifiant MutexRights.Synchronize et MutexRights.Modify droits, combinés à l’aide de l’opération OR au niveau du bit.This method overload is equivalent to calling the TryOpenExisting(String, MutexRights, Mutex) method overload and specifying MutexRights.Synchronize and MutexRights.Modify rights, combined by using the bitwise OR operation. En spécifiant le MutexRights.Synchronize indicateur permet à un thread d’attendre le mutex et en spécifiant le MutexRights.Modify indicateur permet à un thread d’appeler le ReleaseMutex (méthode).Specifying the MutexRights.Synchronize flag allows a thread to wait on the mutex, and specifying the MutexRights.Modify flag allows a thread to call the ReleaseMutex method.

Cette méthode ne demande pas de la propriété du mutex.This method does not request ownership of the mutex.

Sécurité

SecurityCriticalAttribute
requiert une confiance totale pour l’appelant immédiat.requires full trust for the immediate caller. Ce membre ne peut pas être utilisé par le code de confiance partielle ou transparent.This member cannot be used by partially trusted or transparent code.

TryOpenExisting(String, MutexRights, Mutex) TryOpenExisting(String, MutexRights, Mutex) TryOpenExisting(String, MutexRights, Mutex) TryOpenExisting(String, MutexRights, Mutex)

Ouvre le mutex nommé spécifié, s'il existe déjà, avec l'accès de sécurité souhaité, puis retourne une valeur indiquant si l'opération a réussi.Opens the specified named mutex, if it already exists, with the desired security access, and returns a value that indicates whether the operation succeeded.

public:
 static bool TryOpenExisting(System::String ^ name, System::Security::AccessControl::MutexRights rights, [Runtime::InteropServices::Out] System::Threading::Mutex ^ % result);
[System.Security.SecurityCritical]
public static bool TryOpenExisting (string name, System.Security.AccessControl.MutexRights rights, out System.Threading.Mutex result);
static member TryOpenExisting : string * System.Security.AccessControl.MutexRights *  -> bool
Public Shared Function TryOpenExisting (name As String, rights As MutexRights, ByRef result As Mutex) As Boolean

Paramètres

name
String String String String

Nom du mutex système à ouvrir.The name of the system mutex to open.

rights
MutexRights MutexRights MutexRights MutexRights

Combinaison d'opérations de bits des valeurs d'énumération qui représentent l'accès de sécurité voulu.A bitwise combination of the enumeration values that represent the desired security access.

result
Mutex Mutex Mutex Mutex

Quand cette méthode est retournée, contient un objet Mutex qui représente la structure mutex nommée si l'appel a réussi, ou null si l'appel a échoué.When this method returns, contains a Mutex object that represents the named mutex if the call succeeded, or null if the call failed. Ce paramètre est traité comme étant non initialisé.This parameter is treated as uninitialized.

Retours

true si le mutex nommé a été ouvert ; sinon, false.true if the named mutex was opened successfully; otherwise, false.

Exceptions

name est une chaîne vide.name is an empty string.

ou-or- name fait plus de 260 caractères.name is longer than 260 characters.

Une erreur Win32 s’est produite.A Win32 error occurred.

Le mutex nommé existe, mais l’utilisateur ne dispose pas de l’accès de sécurité nécessaire pour l’utiliser.The named mutex exists, but the user does not have the security access required to use it.

Remarques

Si le mutex nommé n’existe pas, cette méthode ne le crée pas.If the named mutex does not exist, this method does not create it. Pour créer le mutex système lorsqu’il n’existe pas déjà, utilisez une de la Mutex constructeurs qui a un name paramètre.To create the system mutex when it does not already exist, use one of the Mutex constructors that has a name parameter.

Si vous ne savez pas si un mutex nommé existe, utilisez cette surcharge de méthode au lieu du OpenExisting(String, MutexRights) surcharge de méthode qui lève une exception si le mutex n’existe pas.If you are uncertain whether a named mutex exists, use this method overload instead of the OpenExisting(String, MutexRights) method overload, which throws an exception if the mutex does not exist.

Le rights paramètre doit inclure le MutexRights.Synchronize indicateur pour permettre aux threads d’attendre le mutex et le MutexRights.Modify indicateur pour permettre d’appeler le ReleaseMutex (méthode).The rights parameter must include the MutexRights.Synchronize flag to allow threads to wait on the mutex, and the MutexRights.Modify flag to allow threads to call the ReleaseMutex method.

Plusieurs appels à cette méthode qui utilisent la même valeur pour name ne retournent pas nécessairement le même Mutex de l’objet, même si les objets retournés représentent le même mutex système nommé.Multiple calls to this method that use the same value for name do not necessarily return the same Mutex object, even though the objects that are returned represent the same named system mutex.

Cette méthode ne demande pas de la propriété du mutex.This method does not request ownership of the mutex.

Sécurité

SecurityCriticalAttribute
requiert une confiance totale pour l’appelant immédiat.requires full trust for the immediate caller. Ce membre ne peut pas être utilisé par le code de confiance partielle ou transparent.This member cannot be used by partially trusted or transparent code.

S’applique à