Bonjour,
je souhaite appeler une fonction régulièrement en C. Comme cette fonction rafraichit l'UI je ne peux pas créer de thread sous peine d'avoir une erreur Xlib. Je me suis donc dirigé vers les événements avec ce code :
Malheureusement cela lance simplement un timeout (dans les deux cas de figure) et je n'arrive pas à lancer un traitement régulier. Je ne connais pas trop le C et je ne suis pas familier avec les threads. Comme dit plus haut cette fonction fait appel à l'UI et en l'appelant dans un thread différent du thread principal ça me génère une erreur Xlib.
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 chargementListeAuto() { struct timeval tv; struct event ev; time_t secondsToWait = 20; //60 * 30; tv.tv_sec = secondsToWait; tv.tv_usec = 0; event_init(); evtimer_set(&ev, myFunction, NULL); evtimer_add(&ev, &tv); event_dispatch(); //remplacé par : event_init(); event_set(&ev, 0, EV_PERSIST, myFunction, NULL); event_add(&ev, &tv); event_dispatch(); event_dispatch(); }
Quelqu'un aurait une idée comment faire ?
Partager