IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[VC7] Multithread et Critical section


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    50
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2003
    Messages : 50
    Par d�faut [VC7] Multithread et Critical section
    Bonjour,

    Je suis en plein dans une application multi thread en VC 7.
    Je suis en train de programmer une critical section, et dans une optique d'utilisation de l'application sur une machine multiprocesseur, je cherche � initialiser la critical section par la fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    InitializeCriticalSectionAndSpinCount()
    � la place de la fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    InitializeCriticalSection()
    Comme l'indique le MSDN dans un cas pareil.

    Quand je compile mon code j'ai une erreur C2065 : undecalered identifier sur la fonction InitializeCriticalSectionAndSpinCount alors que j'ai bien fait l'include de <windows.h>.

    Qu'ai-je oubli� ?

    Merci d'avance

  2. #2
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    2 possibilit�s:
    1 - ton SDK est trop vieux
    2 - il faut d�finir une version de Windows sup�rieure pour pouvoir l'utiliser
    fais clic droit sur cette fonction, aller � la d�claration. Si il ne la trouve pas -> cas 1, sinon, remonte un peu le code au dessus pour savoir quoi d�finir.

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    50
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2003
    Messages : 50
    Par d�faut
    Hello,

    Quand tu parles de la version de Windows, je suppose que tu veux parler de la version cible pour laquelle l'executable va �tre g�n�rer ?

    Mon SDK est celui fournis avec le Visual Studio .Net, est ce le bon ou non ?
    Je travaille sous Windows XP Pro avec un SP2.

    Merci

  4. #4
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Ton SDK n'est pas le plus r�cent, mais il devrait suffire.
    Si tu vas � la d�finition comme je te l'ait dit tu tombes sur:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    #if (_WIN32_WINNT >= 0x0403)
    WINBASEAPI
    BOOL
    WINAPI
    InitializeCriticalSectionAndSpinCount(
        IN OUT LPCRITICAL_SECTION lpCriticalSection,
        IN DWORD dwSpinCount
        );
     
    WINBASEAPI
    DWORD
    WINAPI
    SetCriticalSectionSpinCount(
        IN OUT LPCRITICAL_SECTION lpCriticalSection,
        IN DWORD dwSpinCount
        );
    #endif
    donc rajoute "#define _WIN32_WINNT 0x0403" avant d'inclure <windows.h> et �a devrait compiler. D'ailleurs c'est expliqu� � la fin de la doc sur InitializeCriticalSectionAndSpinCount.
    Pour la version de Windows oui. Cette fonction n'est pas dispo sous 95, et � partir du SP3 sous NT4.

  5. #5
    Membre confirm�
    Inscrit en
    Octobre 2002
    Messages
    39
    D�tails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 39
    Par d�faut
    faut inclure winbase.h

Discussions similaires

  1. Question Critical Section
    Par on2101 dans le forum Threads & Processus
    R�ponses: 3
    Dernier message: 08/09/2009, 22h34
  2. Multithreading avec section critique ?
    Par Cokate dans le forum C#
    R�ponses: 8
    Dernier message: 25/08/2008, 16h05
  3. [Multithread] Mutex versus Critical Section ?
    Par runn2 dans le forum Visual C++
    R�ponses: 2
    Dernier message: 06/10/2006, 09h29
  4. R�ponses: 2
    Dernier message: 03/05/2006, 17h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo