begin process at 2012 05 29 05:18:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Fichier / Disque

 > 

exécuter une fonction en arrière plan


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

exécuter une fonction en arrière plan

jeudi 24 avril 2003 à 09:56:22 | exécuter une fonction en arrière plan

sena

Bonjour,

kelk'un aurait - il un exemple simple d'exécution d'une fonction en arrière plan !
Car la solution 1 ne fonctionne évidemment pas, car la fonction ne rend pas la main tant kel n'a po terminer .... Or elle doit toujours tournée ...

Donc il me faut passer a la solution 2 ki est l'utilisation de CreateThread....
C'est pourkoi j'aimerai bien savoir si kelk'un aurait une source utilisant ceci, ou bien me transmettre un pti exemple simple ....


Merci beaucoup

None.
-------------------------------
Réponse au message :
-------------------------------


>En fait pour la solution 1, peut-être ou peut-être pas il faut >tester.
>
>La solution 2 te paraitre plus adaptée car CreateThread >exécute une fonction en arrière plan.
>
>Core Breaker


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

> Merci
>
> to solution 1 ne fait pas de thread donc au chargement de la dll si j'appel la fonction, je resterais bloqué dans la bovle de récption en UDP? non?
> rappel: la fonction que je souhaite exécutée en arrière plan est en faite une réception UDP qui tourne en boucle ... ( while(1) .....)
>
> Donc dans cette solution aussi je dois utiliser les threads?
>
> merci
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Solution 1:
> > BOOL WINAPI DllMain(
> > HINSTANCE hinstDLL, // handle to DLL module
> > DWORD fdwReason, // reason for calling function
> > LPVOID lpvReserved // reserved
> > )
> > {
> > case DLL_PROCESS_ATTACH:
> > // Au chargement de la DLL
> > break;
> >
> > case DLL_PROCESS_DETACH:
> > // A la libération de la DLL
> > break;
> > }
> >
> > Solution 2:
> > Utiliser la fonction CreateThread pour exécuter ta fonction en arrière plan.
> >
> > Core Breaker
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Bonjour,
> > >
> > > j'ai créer une dll dans la quelle ce trouve une fonction d'écoute en UDP qui affiche un message dè kel recoit kelke choz.
> > >
> > > Cette fonction tourne toujours a partir du moment ou l'utilisateur de la dll l'a appelée.
> > > Mais je suppose que si l'utilisateur appelle cette fonction, il n'aura plus la main tant qu'il ne sera pas sorti de la fonction? Non?
> > >
> > > Donc ce que je souhaiterais c'est quela fonction soit appelée, et kel rende la main à l'utilisateur.
> > > Ou alors je lance la fonction au chargement de la dll (ca aussi c'est possible), mais il faut absolument rendre la main pour que l'utilisateur puisse utiliser la dll.
> > >
> > > Kelk'un peut m'aiguiller SVP?
> > > merci beaucoup.
jeudi 24 avril 2003 à 11:51:23 | Re : exécuter une fonction en arrière plan

sena

C'est bon j'ai réussi a faire un petit exemple mais komen on fait si on veut killer ce thread pendant son exécution?



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

> Bonjour,
>
> kelk'un aurait - il un exemple simple d'exécution d'une fonction en arrière plan !
> Car la solution 1 ne fonctionne évidemment pas, car la fonction ne rend pas la main tant kel n'a po terminer .... Or elle doit toujours tournée ...
>
> Donc il me faut passer a la solution 2 ki est l'utilisation de CreateThread....
> C'est pourkoi j'aimerai bien savoir si kelk'un aurait une source utilisant ceci, ou bien me transmettre un pti exemple simple ....
>
>
> Merci beaucoup
>
> None.
> -------------------------------
> Réponse au message :
> -------------------------------
>
>
> >En fait pour la solution 1, peut-être ou peut-être pas il faut >tester.
> >
> >La solution 2 te paraitre plus adaptée car CreateThread >exécute une fonction en arrière plan.
> >
> >Core Breaker
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Merci
> >
> > to solution 1 ne fait pas de thread donc au chargement de la dll si j'appel la fonction, je resterais bloqué dans la bovle de récption en UDP? non?
> > rappel: la fonction que je souhaite exécutée en arrière plan est en faite une réception UDP qui tourne en boucle ... ( while(1) .....)
> >
> > Donc dans cette solution aussi je dois utiliser les threads?
> >
> > merci
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Solution 1:
> > > BOOL WINAPI DllMain(
> > > HINSTANCE hinstDLL, // handle to DLL module
> > > DWORD fdwReason, // reason for calling function
> > > LPVOID lpvReserved // reserved
> > > )
> > > {
> > > case DLL_PROCESS_ATTACH:
> > > // Au chargement de la DLL
> > > break;
> > >
> > > case DLL_PROCESS_DETACH:
> > > // A la libération de la DLL
> > > break;
> > > }
> > >
> > > Solution 2:
> > > Utiliser la fonction CreateThread pour exécuter ta fonction en arrière plan.
> > >
> > > Core Breaker
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Bonjour,
> > > >
> > > > j'ai créer une dll dans la quelle ce trouve une fonction d'écoute en UDP qui affiche un message dè kel recoit kelke choz.
> > > >
> > > > Cette fonction tourne toujours a partir du moment ou l'utilisateur de la dll l'a appelée.
> > > > Mais je suppose que si l'utilisateur appelle cette fonction, il n'aura plus la main tant qu'il ne sera pas sorti de la fonction? Non?
> > > >
> > > > Donc ce que je souhaiterais c'est quela fonction soit appelée, et kel rende la main à l'utilisateur.
> > > > Ou alors je lance la fonction au chargement de la dll (ca aussi c'est possible), mais il faut absolument rendre la main pour que l'utilisateur puisse utiliser la dll.
> > > >
> > > > Kelk'un peut m'aiguiller SVP?
> > > > merci beaucoup.
>
jeudi 24 avril 2003 à 11:53:15 | Re : exécuter une fonction en arrière plan

sena

Voila,

je pense avoir trouvé et établit un petit exemple simple.
Mais j'ai une kestion, comment je fais si par exemple j'ai une boucle while(1){ ...} dans ma fonction thread et que je suis au bout du main ?

En fait, est-ce que je peux killer le thread quand je suis au bout de mon main? Ou bien est-ce ke ca se fait tout seul?
Parske ca sert rien que mon thread continu a tourné si la fontion appelante a fini....


désolé po moyen de coller mon bout de code sur ce forum, ca me créer une erreur ...

merci d'avance.


Cette discussion est classée dans : message, solution, fonction, plan, dll


Répondre à ce message

Sujets en rapport avec ce message

Problème de retour de dll sous l’API32 [ par ArthurAuguste ] J’ai un .exe (une fenêtre) qui tourne donc avec quelque part une boucle : while( GetMessage( &message, NULL, 0, 0)) { TranslateMessage( &message ); Threads, fonction et mutex ? [ par Adict ] bonjour à tout le monde [^^happy13] dans mon projet de créer un tchat il faut que j'applique sur le client un thread qui exécute une autre fonction q Probleme : creation d' une interface graphique par dll ... :-s [ par GeroXXXX ] Bonjour a tous :) Alors voici mon problème... Je suis actuellement sur la création d' un plugin en c++ ( dll ) pour Xchat : http://www.ircfr.com/code appeler une fonction c++ contenu dans dll avec de code c++ [ par avg ] j'ai une fonction qui est sous une class dans un dll déclarer comme ce ci : [code=cpp]C_MORPHO_User::C_MORPHO_User()[/code] j'ai appeler dll avec Load dll COM question!!! un truc qui me chiffone [ par darkpoulpo ] bonjour, imaginons que nous avons, une dll avec une fonction qui créer une objet COM et la renvoi au programme X pour être utilisé... imagine que plu prob avec une dll [ par BlackWizzard ] Salut!je voudrais faire une dll avec un niveau tres bas...j'ai deja créé une dll de cryptage en me basant sur un code simple...la chose que je compren Fonction vers DLL [ par logisim ] Quelqu'un pourrait-il m'aider à transformer une fonction Visual Cpp en DLL pour Visual Basic ?En Cpp :int TradUnimarc(FILE *fpU, FILE *fdb){// code}En Dll avec c++ builder 6 [ par sebastienbro ] J'aimerais savoir comment exporter une fonction dans une DLL, et en même temp, comment importer une fonction ?merci dev c++ Api & dll [ par pounch ] Tout d'abord lu a tous comme j'en avais marre de chercher tout seul dans mon coin, ben j'a decidé de veindre Bon voila mon pr Lien DLL 16 / API WIN32 [ par CoreBreaker ] Bonjour quelqu'un sait-il comment une fonction de l'API Win32 dans une DLL 16bits ?Et de manière générale comment appeler une fonction d'une DLL 32bit


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

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,437 sec (4)

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