powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TParallel.&For неверно отрабатывает
3 сообщений из 3, страница 1 из 1
TParallel.&For неверно отрабатывает
    #39865448
ecxel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RadStudio 10.3
Есть код.

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
procedure TForm1.Button6Click(Sender: TObject);
var ThreadCounter:integer;
begin
//
  try
  TParallel.&For(1, StrToInt(edit2.Text), procedure(i :integer)
    begin
    //
    inc(ThreadCounter);
    end
  );
  except
  Memo1.Lines.Add('Ахт!!!');
  end;
  Memo1.Lines.Add(floatToStr(ThreadCounter));
end;


До 100 итераций всегда делает хорошо при повышении порядка числа итераций начинает сбоить.
на 100000 иногда отрабатывает 20000 раз, иногда 80000. Иногда все 100000.

Непонятно.

Модератор: Пользуйтесь тегом (кнопкой) SRC для оформления кода, пожалуйста.
...
Рейтинг: 0 / 0
TParallel.&For неверно отрабатывает
    #39865467
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А синхронизировать доступ к разделяемой переменной кто будет?

Код: pascal
1.
2.
3.
4.
5.
6.
    TParallel.&For(1, 100000,
      procedure (i: Int32)
      begin
        TInterlocked.Increment(ThreadCounter);
      end
    );
...
Рейтинг: 0 / 0
TParallel.&For неверно отрабатывает
    #39865470
ecxel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Действительно... Вот затупил!!! Спасибо. Простите!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TParallel.&For неверно отрабатывает
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]