begin process at 2012 02 12 19:34:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

System

 > 

Probleme avec settimer et tread


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

Probleme avec settimer et tread

lundi 30 octobre 2006 à 20:08:16 | Probleme avec settimer et tread

logant83

Bonsoir , pourriez-vous me donner un exemple detaillé de l'utilisation de la commande
settimer sur les timers avec et sans fenetre et pourriez-vous aussi me donner la façon de
faire un tread ansi que de comment les créers pour partager le cpu de mon programme  et quel headers (librairie) utiliser et comment s'en servire pour les timers , j'utilise dev c++ 

Je vous remerci d'avance

lundi 30 octobre 2006 à 22:45:40 | Re : Probleme avec settimer et tread

SAKingdom

Membre Club
Pour SetTimer, normalement, on utilise la procédure de la fenêtre. Sinon, le dernier paramètre permet de pointer vers une fonction qui sera executé après le temps écoulé.
Exemple sans fenêtre:

SetTimer(0, 0, 100, (TIMERPROC)fonction); // 100 millisecondes

Avec une fenêtre, il faut le hWnd de la procédure que tu entre dans le premier paramètre

SetTimer(hWnd, 0, 100, 0); // 100 millisecondes

Puis tu intercepte le message dans la procédure avec WM_TIMER. Si tu as plus qu'un timer, wParam peut te renseigner sur l'id du timer:

case WM_TIMER:
if(wParam == 0) // Timer id 0
{
    ....
}
break;

MSDN pour plus d'info.

On utilise CreateThread pour créé des threads. C'est simple à utiliser. Exemple simple:

HANDLE hThread = CreateThread(0, 0, (LPTHREAD_START_ROUTINE)fonction, 0, 0, 0);

Ne pas oublier de fermer le HANDLE avec CloseHandle:

CloseHandle(hThread);

MSDN encore une fois pour plus d'info

Pour les headers, suffit d'inclure windows.h. La lib devrait être incluse par défaut.

C++ (@++)

lundi 30 octobre 2006 à 23:02:39 | Re : Probleme avec settimer et tread

SAKingdom

Membre Club
J'ai oublié de dire. fonction en paramètre de CreateThread est tout simplement une fonction déclaré comme suit:

DWORD fonction (void *param)
{
    ....
}

......

CreateThread(......, (LPTHREAD_START_ROUTINE)fonction, ......);

C'est elle qui sera executé sur un autre thread.

C++ (@++)

lundi 30 octobre 2006 à 23:07:59 | Re : Probleme avec settimer et tread

BruNews

Administrateur CodeS-SourceS
Ne pas mettre de cast devant les noms de fonction, ça permet d'avoir une alerte compilo au cas où les fonctions sont mal prototypées;

ciao...
BruNews, MVP VC++
lundi 30 octobre 2006 à 23:27:20 | Re : Probleme avec settimer et tread

SAKingdom

Membre Club
C'est l'habitude.

Dans ce cas, déclare la fonction pour le thread comme ça:

DWORD __stdcall fonction (void *param)

et celle pour le timer comme ça:

void __stdcall fonction (HWND hWnd, UINT message, UINT_PTR idEvent, DWORD time)

et oublie les cast dans CreateThread et SetTimer.

J'espère que j'ai pas fais erreur.

C++ (@++)

lundi 30 octobre 2006 à 23:37:43 | Re : Probleme avec settimer et tread

logant83

Merci a tous les deux  :)


Cette discussion est classée dans : probleme, donner, settimer, timers, tread


Répondre à ce message

Sujets en rapport avec ce message

probleme Exercice sur Types et declaration svp [ par djedu59 ] bonjour tout le monde ,je tient dabord a me presenter car je suis tout nouveau sur le site et dans le domaine de la programmation, voila il y a quelqu Probleme connexion base de donné VC++ 2008 [ par sed35 ] Bonjours, Je n'arrive pas a me connecter a une base de donner sous visual c++ express 2008 ou sous basic Dans l'explorateur de donner lorsque je clic probleme de voyageurs de commerce [ par imenjs ] salut tout le monde je suis eleve ingénieur en 1ere année et je doit programmer en c un algorithme de résolution de probleme de voyageur de commerce [ probleme de partition [ par jspimen ] j'ai un probleme au cours de patition d'un image wdslorsque j'ai lancé le boot j'ai un erreur aucour de patition Probleme du Flow Shop approche par la methode des colonies de fourmies [ par SofianeSo ] Bonjour, Alors voila, j'ai besoin d'un code source qui pourrait approcher le problème d'ordonnancement Taches-Machines en utilisant les colonies de fo ExitWindowsEx a causer un probleme sous vista [ par gamemonde ] Bonjour en créant un mini shell j'ai crée un bouton permettant de fermer windows vista avec la fonction ExitWindowsEx, en utilsant EWX_SHUTDOWN et EWX Probleme d'utilisation de la fonction atan2 [ par bivanop ] Bonjour je suis en train de faire un programme de maths et pour cela je voudrais utiliser la fonction de la lib math atan2() Pourtant lors de son util probleme d'initialisation d'un tableau sous code blocks [ par juju116 ] bonjour j'ai voulu juste tester un code bidon pour voir si mon initialisation de tableau fonctionné et j'ai obtenu des résults incoherents je n'ai que probleme iterateur generique [ par loiclm86 ] Voici 1 fonction template que j'essaie de créer. Mais la déclaration de l'itérateur pose pb. template int min_find_key (std::vector vect) { int


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 1,950 sec (4)

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