Bonjour,
Je dois écrire en C un petit programme qui surveille le temps d'exécution de mon véritable programme lancé en parallèle et le tuer s'il dépasse la limite autorisée.
Mon programme C doit faire cette vérification suivant un certains intervalle de temps; toutes les 2 minutes par exemples.
J'ai un petit code qui permet juste de calculer un temps d'exécution et je voudrais l'adapter à mon problème.
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
 
#include <time.h>
// Nom de la classe
// Prend en paramètre la limite de temps d'exécution mémoire et le Programe P
 
// Traitement du programme
//Initialisation
double tempsmax;
double tempsDebut = clock();
const long CLK_PER_MS = (long)(CLOCKS_PER_SEC / 1000.0)
 
//Juste quelques affichages
    printf("clock() = %i\n", (int)clock());
    printf("tempsDebut = %i\n", tempsDebut);
 
//Calcul du temps d'exécution à intervalle donné (ttes les 2 min par exple)
double tempsExec=(double)(clock()-tempsDebut);
 
//Si tempsExec > tempsMax Arrêter le programme P
 
//Conversion en secondes
    double tempsExec=(double)(clock()-tempsDebut)/CLOCKS_PER_SEC;
 
//Affichage du temps
    printf("tempsExec = %i\n", tempsExec);
Merci d'avance de votre aide.