![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#14
|
|||
|
|||
![]() Ну, мой код просто написан как пример. Хотя ошибку можно было бы и привести...
По твоему коду. 1. Что за массив такой - Th. Нигде не описан. 2. Зачем вообще оставлять указатели на потоки, если они у тебя FreeOnTerminate и ты к ним потом все-равно не обращаешься? 3. Сорри, вот тут надо округлить или использовать div: Код:
Th[Threads].i := Threads * (Length(A) div NumberOfThreads); Th[Threads].h := (Threads + 1) * (Length(A) div NumberOfThreads) - 1; 5. Вообще, тут тебе и массив-то этот нафиг не нужен, если ты просто передаешь циферки. Т.е., если у тебя интервал 3..10, то Код:
i := 3 + Threads * (10-3) div NumberOfThreads; h := 3 + (Threads + 1) * (Length(A) div NumberOfThreads) - 1; Ну а внутри потока делаешь обычный цикл от i до h. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Avenger15 (04.10.2015)
|