Thread.Suspend Método

Definição

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.

Aplica-se a

Ver também