PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Socket et Thread
Socket et Thread
Débuté par sylvain.robert, 02 déc. 2005 11:30 - Aucune réponse
Posté le 02 décembre 2005 - 11:30
Bonjour,

JE test présentement l'utilisation des sockets et des threads de Windev 9. JE rencontre un problème, après la fermeture de mon thread lors de la fermeture du socket Windev me retourne une erreur en disant qu'un thread utilise présentement le socket pourtant uneTrace() sur Threadarrete() me retourne VRAI et une vérification de ThreadEtat() me retourne -1 donc le thread a bien été killer mais Windev retourne quand meme une erreur sur SocketFerme(). J'ai mêmem ajouté multitache(100) avant SocketFerme() et ca ne marche toujours pas MAIS si j'affiche Info("blablabla") alors la aucun problème je peux fermer mon Socket ??. Le serveur sur lequel je me connecte utilise CARACT(10) comme fin de commande !. Quelqu'un peut m'éclairer ?

Merci

Ex:
initialisation de la fenêtre:

SI PAS SocketConnecte(cServer,2131) ALORS
Erreur ( "erreur de connexion " + ErreurInfo ( errMessage ))
Ferme()
FIN
SocketChangeModeTransmission(cServer,SocketMarqueurFinBuffer,Caract(10))
ThreadExécute("ClientListen",threadNormal,"Addsocket")

Procedure Locale:
PROCEDURE AddSocket()

cMsg est chaîne = "START"
TANTQUE SocketExist(cServer)
cMsg=SocketLit(cServer,Faux)
SI SansEspace(cMsg) <> "" ALORS TableAjouteLigne(Table1,cMsg)
FIN

RETOUR

Fermeture de la fenêtre:

ThreadArrête("Addsocket")
SI SocketExiste(cServer) ALORS SocketFerme(cServer)