Thread en c#

dahooo2 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
steve87 Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J’ai trouvé sur le net un tuto c# sur les threads, mais il ne semble pas fonctionner. Il compile, mais au lancement, il y a une erreur qui dit que mon thread essaye de modifier un objet qui n'a pas été créée dans ce thread (c'est pourtant bien ce que je souhaite faire).
L'url du tuto : https://csharpro.developpez.com/page9.php
Quelqu'un voit-il un problème dans ce code?
Dois-je utiliser des délégués?

Merci beaucoup,

David.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Threading;

namespace WindowsApplication1
{

  public partial class Form1 : Form
  {
    private int ti, tj;

    public Form1()
    {
      InitializeComponent();
    }


    private void Form1_Load(object sender, EventArgs e)
    {
      Thread t1, t2;

      ti = 0;
      tj = 0;
      t1 = new Thread(new ThreadStart(implemente_ti));
      t1.Start();

      t2 = new Thread(new ThreadStart(implemente_tj));
      t2.Start();
    }

    private void implemente_ti()
    {
      ti++;
      this.textBox2.AppendText("\r\n" + ti.ToString());
      if (ti <= 10000)
        implemente_ti();
    }

    private void implemente_tj()
    {
      tj++;
      textBox3.AppendText("\r\n" + tj.ToString());
      if (tj <= 10000)
        implemente_tj();
    }
  }
}
A voir également:

2 réponses

steve87 Messages postés 56 Date d'inscription   Statut Membre Dernière intervention   6
 
Essai de déclarer le thread en de or de la classe :

private void Form1_Load(object sender, EventArgs e)
0
eee.eee Messages postés 69 Date d'inscription   Statut Membre Dernière intervention   20
 
Essaye de changer private int ti, tj; en public int ti, tj;
-1