Beginthread et socket

blueburry Messages postés 50 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 22 mai 2006 - 26 juil. 2005 à 11:42
cs_Arnotic Messages postés 933 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 9 janvier 2012 - 26 juil. 2005 à 11:57
Bonjour,
g un probleme avec la fonction _beginthread.
je suis en train de creer une classe serveur ki doit accepter plusieurs connexions de clients.
pour les clients, g defini une fonction ds ma classe serveur:

void _cdecl Connexion::nouveauClient(void* csock)

cette fonction permet de realiser la connexion du client au serveur et de lui envoyer des msgs.
je l'ai creee ainsi afin d'utiliser _beginthread.

voici mes kestions:
beginthread doit-elle etre de cette forme:
_beginthread(nouveauClient, 0, (void*)csock); ?

doit-elle etre declaree juste apres la fonction accept() puiske celle-ci est blokante ?

g cette erreur ki apparait "'_beginthread' : undeclared identifier", pourtant g bien fait un "#include , ke dois-je faire?

une dreniere kestion: ds la fonction du client je suis en train de maniupler des sockets, mais ds la declaration je dis (void*)csock, est-ce ke je dois faire ceci pr passer d'un void a un socket
SOCKET sock = (SOCKET*) csock; ?

merci pr votre aide.

1 réponse

cs_Arnotic Messages postés 933 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 9 janvier 2012
26 juil. 2005 à 11:57
Aulieu d'utiliser beginthread, utilise CreateThread (voir MSDN pour plus d'info, ou dans mets sources).

Tu dois mettre ta fonction bloquante dans la fonction qui sera dans le thread.

Après pour le void en socket, oui il faut que tu cast.

@+
Arnotic,
Admin CS, MVP Visual C++
0
Rejoignez-nous