2016-01-25 1 views
0

Comment puis-je attendre deux ou plusieurs choses (avec des types différents) en même temps? Comme dans une boucle d'événement:Comment j'attends deux choses de type différent dans une boucle?

while(true) { 
    ppl::task<Letter> msg1 = WaitForLetter(); //one letter a month 
    ppl::task<SMS> msg2 = WaitForSMS(); //one SMS an hour 

    //wait_any. How to do it for tasks of different types? 
} 

Répondre

0

Je vais répondre à mon propre message.

"PPL Power Pack" soutient "when_any Heterogeneous":

https://pplpp.codeplex.com/wikipage?title=Heterogeneous%20when_any

Sur une note sans rapport, il semble très peu de gens utilisent PPL. Il n'y a que 97 questions étiquetées PPL sur stackoverflow. La plupart n'ont pas de réponses. (TBB a 450, donc il semble une communauté légèrement plus active)