Bonjour,

J'ai une fenêtre qui possède un thread qui rafraichit l'affichage en fontion de valeurs externes. Etant donné que mon application est multi-fenêtre, je peux avoir beaucoup de thread en parallèle. Pour une question d'optimisation, j'aimerais mettre le thread en pause lorsque ma Form est Deactivate, et le reprendre lorsque ma From est Activated. Voilà mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
    protected override void OnActivated(EventArgs e)
    {
      base.OnActivated(e);
 
      if(threadUpdateStatus.ThreadState != ThreadState.Running)
        this.threadUpdateStatus.Resume();
    }
 
    protected override void OnDeactivate(EventArgs e)
    {
      base.OnDeactivate(e);
 
      if(threadUpdateStatus.ThreadState == ThreadState.Running)
        this.threadUpdateStatus.Suspend();
    }
Le problème c'est que ces méthodes sont deprecated, et je ne trouve pas de moyen simple de gérer cela. J'ai trouvé plein de doc pour synchroniser, protéger les ressources, etc.

Est-ce que quelqu'un peut m'aider, ou me donner un lien ou je peux trouver une solution simple?

Merci d'avance