EventWaitHandle.TryOpenExisting Yöntem

Tanım

Belirtilen adlandırılmış eşitleme olayını (varsa) açar ve işlemin başarılı olup olmadığını belirten bir değer döndürür.

Aşırı Yüklemeler

TryOpenExisting(String, EventWaitHandle)

Belirtilen adlandırılmış eşitleme olayını (varsa) açar ve işlemin başarılı olup olmadığını belirten bir değer döndürür.

TryOpenExisting(String, EventWaitHandleRights, EventWaitHandle)

Belirtilen adlandırılmış eşitleme olayını , zaten varsa, istenen güvenlik erişimiyle açar ve işlemin başarılı olup olmadığını belirten bir değer döndürür.

TryOpenExisting(String, EventWaitHandle)

Kaynak:
EventWaitHandle.cs
Kaynak:
EventWaitHandle.cs
Kaynak:
EventWaitHandle.cs

Belirtilen adlandırılmış eşitleme olayını (varsa) açar ve işlemin başarılı olup olmadığını belirten bir değer döndürür.

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

Parametreler

name
String

Açılacak ve diğer işlemlerle paylaşılacak eşitleme nesnesinin adı. Bu ad büyük/küçük harfe duyarlıdır. Ters eğik çizgi karakteri (\) ayrılmıştır ve yalnızca ad alanı belirtmek için kullanılabilir. Ad alanları hakkında daha fazla bilgi için açıklamalar bölümüne bakın. İşletim sistemine bağlı olarak ad üzerinde başka kısıtlamalar da olabilir. Örneğin, Unix tabanlı işletim sistemlerinde ad alanı dışladıktan sonra adın geçerli bir dosya adı olması gerekir.

result
EventWaitHandle

Bu yöntem döndürdüğünde, çağrı başarılı olursa veya null çağrı başarısız olursa adlandırılmış eşitleme olayını temsil eden bir EventWaitHandle nesne içerir. Bu parametre başlatılmamış olarak kabul edilir.

Döndürülenler

true adlandırılmış eşitleme olayı başarıyla açıldıysa; aksi takdirde , false. Bazı durumlarda, false geçersiz adlar için döndürülebilir.

Öznitelikler

Özel durumlar

name boş bir dizedir.

-veya-

Yalnızca .NET Framework: name MAX_PATH'den (260 karakter) uzundur.

name, null değeridir.

name geçersizdir. Bu, bilinmeyen bir ön ek veya geçersiz karakterler gibi işletim sistemi tarafından yerleştirilebilen bazı kısıtlamalar da dahil olmak üzere çeşitli nedenlerle olabilir. Adın ve ortak ön eklerin "Genel\" ve "Yerel\" büyük/küçük harfe duyarlı olduğunu unutmayın. Bazı geçersiz adlar için yöntemi bunun yerine döndürebilir false .

-veya-

Başka bir hata oluştu. Özelliği HResult daha fazla bilgi sağlayabilir.

name Çok uzun. Uzunluk kısıtlamaları işletim sistemine veya yapılandırmaya bağlı olabilir.

Adlandırılmış olay var, ancak kullanıcının istenen güvenlik erişimi yok.

Açıklamalar

name bir ad alanı belirtmek için veya Local\ ön ekine Global\ sahip olabilir. Ad alanı belirtildiğinde Global , eşitleme nesnesi sistemdeki tüm işlemlerle paylaşılabilir. Local Ad alanı belirtilmediğinde de varsayılan olan ad alanı belirtildiğinde, eşitleme nesnesi aynı oturumdaki işlemlerle paylaşılabilir. Windows'da oturum bir oturum açma oturumudur ve hizmetler genellikle farklı bir etkileşimli olmayan oturumda çalışır. Unix benzeri işletim sistemlerinde her kabuğun kendi oturumu vardır. Oturum yerel eşitleme nesneleri, işlemlerin aynı oturumda çalıştırıldığı bir üst/alt ilişki ile eşitleme için uygun olabilir. Windows'da eşitleme nesnesi adları hakkında daha fazla bilgi için bkz. Nesne Adları.

İstenen türde bir eşitleme nesnesi ad alanında varsa, var olan eşitleme nesnesi açılır. Ad alanında bir eşitleme nesnesi yoksa veya ad alanında farklı türde bir eşitleme nesnesi varsa, false döndürülür.

Sistem olayı henüz mevcut olmadığında oluşturmak için parametresi olan name oluşturuculardan EventWaitHandle birini kullanın.

Adlandırılmış bir eşitleme olayının var olup olmadığından emin değilseniz, eşitleme olayı yoksa bir özel durum oluşturan yöntem aşırı yüklemesi yerine OpenExisting(String) bu yöntem aşırı yüklemesini kullanın.

Bu yöntem aşırı yüklemesi, yöntem aşırı yüklemesini TryOpenExisting(String, EventWaitHandleRights, EventWaitHandle) çağırmaya ve bit düzeyinde OR işlemi kullanılarak birleştirilen ve EventWaitHandleRights.Modify hakları belirtmeye EventWaitHandleRights.Synchronize eşdeğerdir. bayrağının EventWaitHandleRights.Synchronize belirtilmesi, bir iş parçacığının adlandırılmış sistem olayında beklemesine ve bayrağının belirtilmesi ise bir iş parçacığının EventWaitHandleRights.Modify ve Reset yöntemlerini çağırmasına Set olanak tanır.

Döndürülen nesneler aynı EventWaitHandle adlandırılmış sistem olayını temsil etse bile, için name aynı değeri kullanan bu yönteme yapılan birden çok çağrı mutlaka aynı nesneyi döndürmez.

Şunlara uygulanır

TryOpenExisting(String, EventWaitHandleRights, EventWaitHandle)

Belirtilen adlandırılmış eşitleme olayını , zaten varsa, istenen güvenlik erişimiyle açar ve işlemin başarılı olup olmadığını belirten bir değer döndürür.

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

Parametreler

name
String

Açılacak ve diğer işlemlerle paylaşılacak eşitleme nesnesinin adı. Bu ad büyük/küçük harfe duyarlıdır. Ters eğik çizgi karakteri (\) ayrılmıştır ve yalnızca ad alanı belirtmek için kullanılabilir. Ad alanları hakkında daha fazla bilgi için açıklamalar bölümüne bakın. İşletim sistemine bağlı olarak ad üzerinde başka kısıtlamalar da olabilir. Örneğin, Unix tabanlı işletim sistemlerinde ad alanı dışladıktan sonra adın geçerli bir dosya adı olması gerekir.

rights
EventWaitHandleRights

İstenen güvenlik erişimini temsil eden numaralandırma değerlerinin bit düzeyinde birleşimi.

result
EventWaitHandle

Bu yöntem döndürdüğünde, çağrı başarılı olursa veya null çağrı başarısız olursa adlandırılmış eşitleme olayını temsil eden bir EventWaitHandle nesne içerir. Bu parametre başlatılmamış olarak kabul edilir.

Döndürülenler

true adlandırılmış eşitleme olayı başarıyla açıldıysa; aksi takdirde , false. Bazı durumlarda, false geçersiz adlar için döndürülebilir.

Öznitelikler

Özel durumlar

name boş bir dizedir.

-veya-

Yalnızca .NET Framework: name MAX_PATH'den (260 karakter) uzundur.

name, null değeridir.

name geçersizdir. Bu, bilinmeyen bir ön ek veya geçersiz karakterler gibi işletim sistemi tarafından yerleştirilebilen bazı kısıtlamalar da dahil olmak üzere çeşitli nedenlerle olabilir. Adın ve ortak ön eklerin "Genel\" ve "Yerel\" büyük/küçük harfe duyarlı olduğunu unutmayın. Bazı geçersiz adlar için yöntemi bunun yerine döndürebilir false .

-veya-

Başka bir hata oluştu. Özelliği HResult daha fazla bilgi sağlayabilir.

name Çok uzun. Uzunluk kısıtlamaları işletim sistemine veya yapılandırmaya bağlı olabilir.

Adlandırılmış olay var, ancak kullanıcının istenen güvenlik erişimi yok.

Açıklamalar

name bir ad alanı belirtmek için veya Local\ ön ekine Global\ sahip olabilir. Ad alanı belirtildiğinde Global , eşitleme nesnesi sistemdeki tüm işlemlerle paylaşılabilir. Local Ad alanı belirtilmediğinde de varsayılan olan ad alanı belirtildiğinde, eşitleme nesnesi aynı oturumdaki işlemlerle paylaşılabilir. Windows'da oturum bir oturum açma oturumudur ve hizmetler genellikle farklı bir etkileşimli olmayan oturumda çalışır. Unix benzeri işletim sistemlerinde her kabuğun kendi oturumu vardır. Oturum yerel eşitleme nesneleri, işlemlerin aynı oturumda çalıştırıldığı bir üst/alt ilişki ile eşitleme için uygun olabilir. Windows'da eşitleme nesnesi adları hakkında daha fazla bilgi için bkz. Nesne Adları.

İstenen türde bir eşitleme nesnesi ad alanında varsa, var olan eşitleme nesnesi açılır. Ad alanında bir eşitleme nesnesi yoksa veya ad alanında farklı türde bir eşitleme nesnesi varsa, false döndürülür.

Sistem olayı henüz mevcut olmadığında oluşturmak için parametresi olan name oluşturuculardan EventWaitHandle birini kullanın.

Adlandırılmış bir eşitleme olayının var olup olmadığından emin değilseniz, eşitleme olayı yoksa bir özel durum oluşturan yöntem aşırı yüklemesi yerine OpenExisting(String, EventWaitHandleRights) bu yöntem aşırı yüklemesini kullanın.

parametresi, rights iş parçacıklarının EventWaitHandleRights.Synchronize olayda beklemesine izin vermek için bayrağını ve iş parçacıklarının EventWaitHandleRights.Modify ve Reset yöntemlerini çağırmasına izin vermek için bayrağını Set içermelidir.

Döndürülen nesneler aynı EventWaitHandle adlandırılmış sistem olayını temsil etse bile, için name aynı değeri kullanan bu yönteme yapılan birden çok çağrı mutlaka aynı nesneyi döndürmez.

Şunlara uygulanır