Thread.Suspend Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Atenção
Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. http://go.microsoft.com/fwlink/?linkid=14202
Atenção
Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. https://go.microsoft.com/fwlink/?linkid=14202
Ou suspende a linha, ou se a linha já estiver suspensa, não tem efeito.
public:
void Suspend();
public void Suspend();
[System.Obsolete("Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. http://go.microsoft.com/fwlink/?linkid=14202", false)]
public void Suspend();
[System.Obsolete("Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. https://go.microsoft.com/fwlink/?linkid=14202", false)]
public void Suspend();
member this.Suspend : unit -> unit
[<System.Obsolete("Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. http://go.microsoft.com/fwlink/?linkid=14202", false)>]
member this.Suspend : unit -> unit
[<System.Obsolete("Thread.Suspend has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. https://go.microsoft.com/fwlink/?linkid=14202", false)>]
member this.Suspend : unit -> unit
Public Sub Suspend ()
- Atributos
Exceções
.NET Core e .NET 5+ apenas: Em todos os casos.
O tópico ainda não foi iniciado ou está morto.
O chamador não tem o valor apropriado SecurityPermission.
Observações
Se a thread já estiver suspensa, este método não tem efeito.
Atenção
Não utilize os Suspend métodos e Resume para sincronizar as atividades dos threads. Não tens forma de saber que código um thread está a executar quando o suspendes. Se suspender um thread enquanto ele mantém bloqueios durante uma avaliação de permissões de segurança, outros threads podem AppDomain ser bloqueados. Se suspender um thread enquanto está a executar um construtor de classe, outros threads AppDomain que tentam usar essa classe são bloqueados. Bloqueios podem ocorrer muito facilmente.
Quando chamas o Suspend método numa thread, o sistema nota que foi solicitada uma suspensão de thread e permite que a thread seja executada até atingir um ponto seguro antes de a suspender efetivamente. Um ponto seguro para uma thread é um ponto na sua execução onde pode ser realizada a recolha de lixo. Uma vez atingido um ponto seguro, o runtime garante que o thread suspenso não fará mais progresso no código gerido. Um thread a executar código gerido fora é sempre seguro para recolha de lixo, e a sua execução continua até tentar retomar a execução do código gerido.