Прочитать на английском

Поделиться через


SecurityContext.Run(SecurityContext, ContextCallback, Object) Метод

Определение

Выполняет указанный метод в указанном контексте безопасности в текущем потоке.

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);

Параметры

securityContext
SecurityContext

Задаваемый контекст безопасности.

callback
ContextCallback

Делегат, представляющий метод, выполняемый в указанном контексте безопасности.

state
Object

Данный объект передается в метод обратного вызова.

Атрибуты

Исключения

securityContext имеет значение null.

-или-

securityContext не был получен во время операции отслеживания.

-или-

Объект securityContext уже использовался в качестве аргумента в вызове метода Run(SecurityContext, ContextCallback, Object).

.NET 5+ (включая .NET Core): во всех случаях.

Примеры

В следующем примере кода показано, как использовать Run метод для выполнения метода в указанном контексте безопасности.

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);
    }
}

Комментарии

Контекст безопасности для текущего потока возвращается в предыдущее состояние после завершения вызова метода.

Применяется к

Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9