Partage via


Thread.Suspend Méthode

Définition

Attention

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

Attention

Thread.Suspend has been deprecated. Use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources.

Attention

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

Suspend le thread ou, s'il est déjà suspendu, n'a aucun effet.

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 ();
[System.Obsolete("Thread.Suspend has been deprecated. Use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources.")]
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 ();
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)>]
member this.Suspend : unit -> unit
[<System.Obsolete("Thread.Suspend has been deprecated. Use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources.")>]
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
member this.Suspend : unit -> unit
Public Sub Suspend ()
Attributs

Exceptions

.NET Core et .NET 5 (et versions ultérieures) uniquement : Dans tous les cas.

Le thread n’a pas été démarré ou est inactif.

L’appelant ne possède pas le SecurityPermission nécessaire.

Remarques

Si le thread est déjà suspendu, cette méthode n’a aucun effet.

Attention

N’utilisez pas les Suspend méthodes et Resume pour synchroniser les activités des threads. Vous n’avez aucun moyen de savoir quel code un thread est en cours d’exécution lorsque vous le suspendez. Si vous suspendez un thread pendant qu’il contient des verrous lors d’une évaluation d’autorisation de sécurité, d’autres threads du AppDomain peuvent être bloqués. Si vous suspendez un thread pendant qu’il exécute un constructeur de classe, les autres threads du AppDomain qui tentent d’utiliser cette classe sont bloqués. Des interblocages peuvent se produire très facilement.

Lorsque vous appelez la Suspend méthode sur un thread, le système note qu’une suspension de thread a été demandée et autorise le thread à s’exécuter jusqu’à ce qu’il atteigne un point sûr avant de suspendre le thread. Un point sans risque pour un thread est un point de son exécution auquel le nettoyage de la mémoire peut être exécuté. Une fois atteint un point sans risque, le runtime garantit que le thread suspendu ne progressera pas dans le code managé. Un thread s’exécutant en dehors du code managé est toujours sûr pour le nettoyage de la mémoire, et son exécution se poursuit jusqu'à ce qu’il tente de reprendre l’exécution du code managé.

S’applique à

Voir aussi