Parallel.For et Action à plusieurs paramètres ?
Salut,
Actuellement pour avoir un parallèle for j'ai utilisé la lib TBB d'intel avec un fonctor (je suis sous visual 2010 mais j'ai pas réussi à faire fonctionner la version lambdas méthodes en managé).
ça donne quelquechose comme ça:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
class computeFonctor()
{
void operator()( const tbb::blocked_range<U32>& r ) const
{
(...)
}
computeFonctor(float a_fParam1, bool a_bParam2): m_fParam1(a_fParam1), m_bParam2(a_bParam2) { }
private:
float m_fParam1;
bool m_bParam2;
}; |
et l'appel :
Code:
1 2
|
tbb::parallel_for(tbb::blocked_range<U32>(0, 1000), computeFonctor(fParamValue1, bParamValue2,), tbb::auto_partitioner()); |
ça fonctionne bien, mais par contre si je veux que l'un des paramètres de mon fonctor soit un pointeur vers un type managé du framework .NET, je ne peux pas.
J'ai donc songé à faire la même chose en utilisant le System::Threading::Tasks::Parrallel::For, mais le problème c'est que je ne trouve pas comment je peux créer une System::Action<Int32>(pMethod) qui prendrait en charge mes deux paramètres comme le fait mon fonctor natif.
quelqu'un peut m'aider ?
Merci.