Bonjour,

J'ai écumé le net sur l'utilisation des mulithreads mais je ne saisi pas bien encore son fonctionnement. Donc voici le contexte. J'ai une appli qui fait un traitement qui fige complètement ma fenêtre principale donc je me suis dis que je vais utiliser un autre thread pour effectuer ce traitement. Dans mon thread principal j'ai fais ceci:
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
17
18
19
20
21
22
23
 
public partial class frmLauncherBo : Form
    {
private Thread _threadTraitement;
public frmLauncherBo()
        {
            InitializeComponent();
 
        }
private void btnProcess_Click(object sender, EventArgs e)
        {
            StartThread();
            //TraitementDoc();
        }
private void StartThread()
        {
            //TraitementDoc est la fonction exécutée par le thread
            _threadTraitement = new Thread(new ThreadStart(TraitementDoc));
            //On nomme le thread pas obligatoire
            _threadTraitement.Name = "Traitement_doc_bo";
            //Démarrage du thread
            _threadTraitement.Start();
        }
et lors de l'exécution j'ai le message suivant:
Opération inter-threads non valide: le contrôle 'frmLauncherBo' a fait l'objet d'un accès d'un thread autre que celui sur lequel il a été créé.
Alors je pense que j'ai du mal déclaré mon thread mais je ne sais pas comment.
Faut-il créer une classe à part et l'appeler depuis mon form principal. Je précise que mon form principal s'appelle frmLauncherBo.