Я хотел бы запустить метод Полигонизм параллельный для ячеек (они независимы). Как создать потоки для ячеек, если они инициализированы в цикле?Темы для переменных, инициализированных в цикле
for (int j = 0; j < RowCount - 1; j++)
{
for (int k = 0; k < ColumnCount - 1; k++)
{
GridCell currentCell = GetCurrentCell (Slice1, Slice2, j, k);
Polygonise (ref Triangles, int isoLevel, GridCell currentCell);
}
}
ДОБАВЛЕНО: Я хотел бы передать его в ГПУ, таким образом, Parallel.For и PLINQ не подходят. Проблема в том, что она длится долго, потому что существует множество вычислений в методе Poligonise и есть много строк и столбцов (параметры цикла). Операции в методе работают очень быстро, но цикл для этого занимает много времени. Мне нужна логика многопоточности в этом.
'Parallel.For'? Параллельный Linq (* Plinq *)? –
@DmitryBychenko Я хочу передать его на GPU с Cudafy, таким образом Parallel.For и PLinq не подходят. Проблема состоит в том, чтобы сделать параллельную (возможно) архитектуру для цикла с вычислениями. Он выполняется долго, потому что в методе Poligonise имеется много вычислений. –
Я имею в виду, мне нужна логика многопоточности, подходящая здесь –