begin process at 2012 05 29 14:17:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Probleme de compilation Multithread


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme de compilation Multithread

mercredi 16 juillet 2003 à 15:16:21 | Probleme de compilation Multithread

TwinSidE

Bonjour,
J'ai une classe de ce type :

class C_ClientServer
{
public:
    C_ClientServer(void);
    ~C_ClientServer(void);

    bool StartServerListening(char* Adress, int PORT);
    DWORD WINAPI ServerListening(LPVOID param);

private:
    HANDLE ListenThread;
    DWORD ListenThreadID;
    HANDLE hRunMutex;
    HANDLE hWriteMutex;
    int ThreadNr;
};

bool C_ClientServer::StartServerListening(char *Adress, int PORT)
{
    //Truc sans importances [Seting-up de sockets]
    CreateThread(0,0,ServerListening,0,0,&ListenThreadID);
return true;
}

et donc quand je veu compiler le compilateur (Visual C++7) me sort un joli message du genre :
error C2440: 'cast de type' : impossible de convertir de 'overloaded-function' en 'LPTHREAD_START_ROUTINE'

Pourtant après un zieutage dans la MSDN, ma fonction est normalement typé pour passer en LPTHREAD_START_ROUTINE. Après quelques essais infructueux (genre réinterpreter cast, :: et this->) je teste la fonction _beginthread qui là aussi ne fonctionne pas bien, (une histoire de __cdecl, pas bien compris :|). Le compilateur a l'option /MTd (débogage Multithread).

Donc voilà si quelqun a une idée pour résoudre ou contourner le problème merci :)
mercredi 16 juillet 2003 à 15:27:24 | Re : Probleme de compilation Multithread

BruNews

Administrateur CodeS-SourceS
Et oui le compilo a raison. Si ta fonction a une declaration de portee(classe) elle doit etre declaree statique pour que le compilo connaisse son adresse une fois pour toutes.
Ce n'est pas fini:
1) doit retourner DWORD.
2) __stdcall doit etre sa forme d'appel.
Ce sera tout si je n'oublie rien.
BruNews, ciao...


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
> J'ai une classe de ce type :
>
> class C_ClientServer
> {
> public:
>     C_ClientServer(void);
>     ~C_ClientServer(void);
>
>     bool StartServerListening(char* Adress, int PORT);
>     DWORD WINAPI ServerListening(LPVOID param);
>
> private:
>     HANDLE ListenThread;
>     DWORD ListenThreadID;
>     HANDLE hRunMutex;
>     HANDLE hWriteMutex;
>     int ThreadNr;
> };
>
> bool C_ClientServer::StartServerListening(char *Adress, int PORT)
> {
>     //Truc sans importances [Seting-up de sockets]
>     CreateThread(0,0,ServerListening,0,0,&ListenThreadID);
> return true;
> }
>
> et donc quand je veu compiler le compilateur (Visual C++7) me sort un joli message du genre :
> error C2440: 'cast de type' : impossible de convertir de 'overloaded-function' en 'LPTHREAD_START_ROUTINE'
>
> Pourtant après un zieutage dans la MSDN, ma fonction est normalement typé pour passer en LPTHREAD_START_ROUTINE. Après quelques essais infructueux (genre réinterpreter cast, :: et this->) je teste la fonction _beginthread qui là aussi ne fonctionne pas bien, (une histoire de __cdecl, pas bien compris :|). Le compilateur a l'option /MTd (débogage Multithread).
>
> Donc voilà si quelqun a une idée pour résoudre ou contourner le problème merci :)
mercredi 16 juillet 2003 à 21:22:41 | Re : Probleme de compilation Multithread

TwinSidE

Merci ça marche nickel maintenant :)


Cette discussion est classée dans : int, probleme, handle, multithread, clientserver


Répondre à ce message

Sujets en rapport avec ce message

probleme avec pointeurs (urgent) [ par legrosnul ] legrosnul:)Salut a tous! voici le mini programme suivant en c.(Fonction):void bidon (int *a, int *b, int *c) {*c=*a;*c=*c+b;}main() {int x,y,z;x=10;y= allocation dynamique [ par hobbes ] Bonjour,Mon probleme est que je ne connais pas a l avance la taille du tableau que je souhaite cree. Je pensais alors :creer un tab de maniere dynamiq Probleme de Dialog VC++ [ par anaya ] Bonjour,J'espere bien que vous allez m'aider, voila mon probleme:Mon programme marche a merveille avec Domodal(); mais moi je dois utiliser autre cho Probleme a l'edition des liens [ par stockley81 ] J'utilise une fonction deja ecrite dans un autre programme en C++. Je fais un include du fichier.h et en compilant mon programme j'obtient le message probleme cast [ par morgandetoi06 ] svp aidez moi...j utilise la fonction pow qui renvoie un doubledonc je fait double b; // nombredouble j; // exposantdouble n; // reponsen=pow(b,j);don petit probleme [ par fity ] salut tout le monde je continue a apprendre le c++ je me suis procurer le livre c++ pour les nul qui est super bien pour ceux et celles qui on jamais probleme avec printf(%d) [ par jeani763 ] Mon probleme est assez compliqué :Je voudrais que mon programme compte le nombre de lettres que je lui donne ce qui ce fait grace a la fonction cin ; Probleme de tableau entre C et C++ [ par fred23 ] Bonjour,J'ai récupéré des codes qui semblent en C et je souahiterais les mettre en C++.qui peut me dire si ces codes sont en C ou C++.Matrix = (int ** probleme avec allegro en C [ par boponfire ] je cite l'aide d'allegro : "int d_icon_proc(int msg, DIALOG *d, int c); C'est un boutton image, la couleur fg est utlisee pour les lignes dessinees lo Probleme avec les threads en C++ sour linux [ par benjamvs ] Bonjour,j'ai le probleme suivant a regler en C++je travaille sur les threads sous linux, avec la librairie "pthread"Lorsque je crée un thread, celui c


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,187 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales