Bonsoir,

J'ai récemment débuté la programmation en threads.

J'ai cru avoir compris que l'execution d'un thread se faisait parralèlement à l'éxecution du programme, j'ai donc créé un thread dans lequel il y a une boucle.

A première vue tout semblait marcher, mais quand j'ai ajouté du code à la suite, j'ai eu l'impression qu'il ne fonctionnait pas.

J'ai donc ajouté un simple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
writeln('est-ce que cela fonctionne vraiment?');
à la suite du Machin.Execute; et le fait est que ça ne s'affiche pas...

Je me demande alors si, soit j'ai mal compris le principe des threads, ou alors si il y a quelquechose que j'ai oublié...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
    ServerThread = class(TThread)
    protected
      Listen : TWSocket;
      procedure ServerOnDataAvailable(Sender : TObject; ErrCode : Word);
    public
      PaquetRecu : TPaquet;
      constructor Create; virtual;
      procedure Run;
      procedure Execute; override;
    end;
Pourriez vous m'indiquer des pistes pour trouver d'où provient le problème? Car j'ai l'impression d'avoir raté quelquechose de bête.

Cordialement,

iLUV.