Bonjour,
j’ai ce message d’erreur en utilisant les threads avec VB :
Le thread est en cours d’exécution ou arrêté ; il ne peut pas redémarrer.
En effet le thread est en statut « Stopped », mais je n’arrive pas à le re-démarrer…
Des idées ?
Merci,
Marco
Je suppose que c’est tout simplement le thread qui a fini ce qu’il avait à faire et qui donc s’est arrêté ? Auquel cas il suffit d’en recréer un…
On pourra peut être t’éclairer un peu plus si tu nous donnes un exemple de code et/ou si tu détailles ton problème 
Ce n’est pas un nouveau thread, c’est un thread trd1 existant qui est en statut « Stopped »…
Que je souhaite passer en « Running »…
Private trd1 As New Thread(AddressOf ThreadConn)
Private trd2 As New Thread(AddressOf ThreadData)
Dim Thrdata As [String] = Nothing
Dim Thrconn As [String] = Nothing
Load de la form
trd1.Start()
Sub ThreadConn()
If TcpServer.Pending <> True Then
tcpClientConnect = TcpServer.AcceptTcpClient
Try
stream = tcpClientConnect.GetStream()
trd2.Start()
Catch ex As Exception
End Try
End If
Sub ThreadData()
…
Voici le cycle :
Au démarrage = trd1 est RUNNING, trd2 est UNSTARTED
Action utilisateur (Connexion TELNET) = trd1 est STOPPED, trd2 est RUNNING
Comment repasser le trd1 en RUNNING et trd2 en UNSTARTED (A part couper la tâche ;o))
Merci,
Marco
Quand un thread s’arrête, on ne peut pas le relancer. Donc soit tu fais une boucle infinie pour que le thread ne s’arrête jamais (typiquement : une boucle attendant les connections), soit tu en bloques l’exécution avec un mutex, soit tu en relances un nouveau 