Bonjour,
je bosse sur une appli C++/QT assez lourde et j'ai 2 taches qui mettent un peu plus de 2min chacune au lancement. Ça me fait presque 5min d'attente avant d'avoir l'IHM... Pas bon!
Ma première tache est "nécessaire" d'avoir fini avant l'ouverture de l'IHM mais la seconde pourrait être faite après quand il y a du CPU dispo.
Je l'ai donc mis dans un std::thread mais le problème c'est qu'elle me prend 100% du CPU et que mon IHM ne répond pas pendant ce temps... Je retombe sur la même situation qu'au début...
Bref que me conseillerez vous afin de mettre la tache en arrière plan mais réduire son temps CPU? C'est le remplissage d'un arbre avec des millions d'entrées... Quelques boucles inévitable.
Le truc auquel je pensais serait de rajouter des sleep mais ça m'embette un peu de crader mon code en les ajoutant sachant qu'il ne faudrait qu'ils soient actifs que si la tache est threadée...
Une autre idée?
Partager