Bonjour,
Je cherche à lancer un thread d'une méthode de la classe appelante, privée (mais cela devrait marcher ?!) mais surtout template.
Je ne vois pas comment appeler boost::bind, et j'ai beau chercher, je n'ai pas de réponses. Voilà l'état actuel des choses :
Merci d'avance.
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 class CSV_reader { template <class Translator> void read(std::vector<Translator> &translators) //... public: template <class Translator> void run(std::vector<Translator> &translators) { if(m_csv.good()) { m_thread = new boost::thread(boost::bind(&CSV_reader::read<Translator>, *this, translators)); } } //... };
Cordialement,
Kidpaddle2.
P.S: Le translator est une classe qui traduit une ligne brute en données exploitables, elle est donc définie par l'utilisateur du fichier. J'aimerais garder l'idée de traduction, pour séparer lecture d'interprétation, mais je ne suis pas vraiment satisfait de ma méthode. Peut-être que des experts de Boost, qui est la bibliothèque qui selon moi est la mieux pensée, auraient une meilleure idée ? Ou d'amélioration justement en utilisant boost ? Merci.
Partager