Salut,
J'avous que je me met à boost depuis peu (mieux vaut tard que j'amais). Je m'interesse en particulier à ce qu'on peu faire avec boost.thread. Je voulais créer un bout de code qui a le comportement suivant:
mon header:
mon fichier source:
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 class Task { private: //members... publics: // ctor and dtor Task(/*init members*/){} ~Task(){} void operator()() { // Task to do.... } };
bien évidement ma création des objets boost::thread est fausse. J'aimerais savoir s'il y a moyen de passer les methodes associées au objets Task pour que les threads executent les taches task1 et task2?
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 // includes.... int main() { Task task1(/* parametres1 */); Task task2(/* parametres2 */); // C'est ici que je ne vois pas comment les passer !!! boost::thread my_thread1(task1()); boost::thread my_thread2(task2()); my_thread1.join(); my_thread2.join(); return exit(EXIT_SUCCESS); }
Partager