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 :

[ATL] Question sur le modèle de thread


Sujet :

MFC

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 6
    Points : 7
    Points
    7
    Par défaut [ATL] Question sur le modèle de thread
    Bonjour,

    est-ce que quelqu'un pourrait m'indiquer où se situe la différence au niveau du code lorque l'on choisit avec le wizard la création d'un objet ATL

    . Monothread
    . Cloisonné
    . Libre (Free-Threaded)

    Merci d'avance


    fred

  2. #2
    Membre éprouvé
    Avatar de Gabrielly
    Inscrit en
    Juin 2004
    Messages
    722
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 722
    Points : 1 128
    Points
    1 128
    Par défaut
    Extrait de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    class ATL_NO_VTABLE CSockDriver : 
    	public CComObjectRootEx<CComSingleThreadModel>,    // ici
    	public CComCoClass<CSockDriver, &CLSID_SockDriver>,
    	public IDispatchImpl<ISockDriver, &IID_ISockDriver, &LIBID_MCNNetSocketDriver2Lib, /*wMajor =*/ 1, /*wMinor =*/ 0>,
    	public IDispEventImpl<1, CSockDriver, &__uuidof(_ISockServerEvents)>
    {
    public:
    	CSockDriver();
                    // . . .
    Extrait de ATL
    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
    19
    20
    21
    22
     
    class CComMultiThreadModel
    {
    public:
    	static ULONG WINAPI Increment(LPLONG p) throw() {return InterlockedIncrement(p);}
    	static ULONG WINAPI Decrement(LPLONG p) throw() {return InterlockedDecrement(p);}
    	typedef CComAutoCriticalSection AutoCriticalSection;
    	typedef CComAutoDeleteCriticalSection AutoDeleteCriticalSection;
    	typedef CComCriticalSection CriticalSection;
    	typedef CComMultiThreadModelNoCS ThreadModelNoCS;
    };
     
    class CComSingleThreadModel
    {
    public:
    	static ULONG WINAPI Increment(LPLONG p) throw() {return ++(*p);}
    	static ULONG WINAPI Decrement(LPLONG p) throw() {return --(*p);}
    	typedef CComFakeCriticalSection AutoCriticalSection;
    	typedef CComFakeCriticalSection AutoDeleteCriticalSection;
    	typedef CComFakeCriticalSection CriticalSection;
    	typedef CComSingleThreadModel ThreadModelNoCS;
    };

Discussions similaires

  1. Question sur le comportement des threads
    Par Krishna dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 12/01/2009, 21h56
  2. Questions sur le modèle MVC
    Par dr23fr dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 05/12/2006, 19h46
  3. Question sur la synchronisation des threads.
    Par sebastieng dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 07/12/2005, 15h55
  4. Réponses: 24
    Dernier message: 29/08/2005, 13h33
  5. question sur le comportement des threads
    Par rose-bonbon dans le forum CORBA
    Réponses: 4
    Dernier message: 27/10/2004, 18h00

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