SecurityContext.Run(SecurityContext, ContextCallback, Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Spustí zadanou metodu v zadaném kontextu zabezpečení v aktuálním vlákně.
public:
static void Run(System::Security::SecurityContext ^ securityContext, System::Threading::ContextCallback ^ callback, System::Object ^ state);
public static void Run (System.Security.SecurityContext securityContext, System.Threading.ContextCallback callback, object state);
[System.Security.SecurityCritical]
public static void Run (System.Security.SecurityContext securityContext, System.Threading.ContextCallback callback, object state);
static member Run : System.Security.SecurityContext * System.Threading.ContextCallback * obj -> unit
[<System.Security.SecurityCritical>]
static member Run : System.Security.SecurityContext * System.Threading.ContextCallback * obj -> unit
Public Shared Sub Run (securityContext As SecurityContext, callback As ContextCallback, state As Object)
Parametry
- securityContext
- SecurityContext
Kontext zabezpečení, který se má nastavit.
- callback
- ContextCallback
Delegát, který představuje metodu, která se má spustit v zadaném kontextu zabezpečení.
- state
- Object
Objekt, který se má předat metodě zpětného volání.
- Atributy
Výjimky
securityContext
je null
.
-nebo-
securityContext
nebyla získána prostřednictvím operace zachycení.
-nebo-
securityContext
již byl použit jako argument pro Run(SecurityContext, ContextCallback, Object) volání metody.
.NET 5+ (včetně .NET Core): Ve všech případech.
Příklady
Následující příklad kódu ukazuje, jak použít metodu Run ke spuštění metody v zadaném kontextu zabezpečení.
using System;
using System.Security;
using System.Threading;
class Test
{
static void Main()
{
SecurityContext.Run(SecurityContext.Capture(),
new ContextCallback(Callback), "Hello world.");
}
static void Callback(object o)
{
Console.WriteLine(o);
}
}
Imports System.Security
Imports System.Threading
Class Test
Shared Sub Main()
Dim cCallBack As New ContextCallback(AddressOf Callback)
SecurityContext.Run(SecurityContext.Capture(), cCallBack, "Hello world.")
End Sub
Shared Sub Callback(ByVal o As Object)
Console.WriteLine(o)
End Sub
End Class
Poznámky
Kontext zabezpečení pro aktuální vlákno se vrátí do předchozího stavu po dokončení volání metody.