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 :

PB occupation CPU a 100% apres qqs heures d'utilisation...


Sujet :

MFC

  1. #1
    Candidat au Club
    Inscrit en
    Août 2004
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 2
    Points : 2
    Points
    2
    Par défaut PB occupation CPU a 100% apres qqs heures d'utilisation...
    Bonjour,

    J'ai un gros soucis :

    Dans mon application j'utilise un thread :

    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
    23
    24
    25
    26
    27
    28
    29
    UINT CDlgMain::threadUpdateTC(LPVOID pParam)
    {
    	CDlgMain		*pThis			= NULL;
    	long			lCurrentTimer	= timeGetTime();
     
    	pThis =  (CDlgMain *)pParam;
    	if (pThis == NULL)
    		return 0;
     
    	while(true)
    	{
    		if (WaitForSingleObject(pThis->m_hEventKillThreadUpTC, 100) != WAIT_TIMEOUT)
    		{
    			SetEvent(pThis->m_hEventKillThreadUpTCOK);
    			return 0;
    		}
    		//Update enable properties for clip on replacement clip list every seconds
    		if ((timeGetTime() - lCurrentTimer) >= 1000)
    		{
    			pThis->SendMessage(WM_ANSWER_RECEIVED, WM_UPDATE_ENABLE_PROP, NULL);
    			lCurrentTimer = timeGetTime();
    		}
    		//check for starting first playback
    		pThis->SendMessage(WM_ANSWER_RECEIVED, WM_CHECK_START_FIRST_PLAYBACK, NULL);
     
    		pThis->SendMessage(WM_ANSWER_RECEIVED, WM_ON_MAIN_THREAD, NULL);
    	}
    	return 0;
    }
    Mon application tourne bien jusqu'a un certain moment (qqs heures) ou l'occupation CPU passe a 99% (augmentation progressive).
    Le probleme c'est que quand je quitte mon application je n'ai aucun memory leaks. Je ne comprends pas d'ou peut provenir mon erreur...
    La seule maniere de revenir a mon temps d'occupation initiale est de tuer le thread. Je pense donc que mon soucis vient de mon thread... Une idée ?

    Merci d'avance....

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    une possibilitée c'est que tes pThis->SendMessage renvoie 0/1 immediatement ,s'approchant ainsi d'une boucle presque a vide et consommant plus de cpu ...

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/03/2007, 12h04
  2. Occupation CPU très élevée
    Par sebhm dans le forum Administration système
    Réponses: 10
    Dernier message: 07/06/2006, 16h12
  3. L'usage du CPU atteint 100% pour une Form
    Par Ben_Le_Cool dans le forum Composants VCL
    Réponses: 14
    Dernier message: 21/09/2005, 11h52
  4. Thread et occupation CPU
    Par kramer dans le forum C++Builder
    Réponses: 11
    Dernier message: 24/05/2005, 21h57
  5. Connaître le taux d'occupation CPU
    Par Thom@s dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 12/11/2003, 23h44

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