Disons que dans la portée englobante, j'ai certaines variables auxquelles chaque thread d'une boucle parallel_for doit accéder. J'ai une idée combinable qui conviendrait, faisant une copie de ma variable dans chaque fil. Cependant, je ne comprends pas comment initialiser ma chose combinable:C++ PPL - initialise un combinable
Par exemple je veux utiliser des copies d'une formule QString. Je crée un debout combinables pour les choses copiés dans chaque thread:
combinable<QString> formulaRx;
devrais-je écrire alors:
parallel_for(0,p,[&formulaRx, formula](int i)
{
formulaRx.local() = formula;
// do things
});
? Ne serait-ce résoudre le problème, ou serait-il encore un accès simultané à la ligne
formulaRx.local() = formula;
Quelle est la bonne façon de gérer cette situation?
S'il vous plaît me dire si pas clair
Merci et salutations.
Merci. Cependant, j'aurais dû être plus précis: je travaille aussi avec des pointeurs dans la même situation: et si la formule est un pointeur? Ensuite, je suppose que les «pointeurs» f pointeraient vers la même chose. – octoback