powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Потоки не хотят работать в полную силу.
10 сообщений из 10, страница 1 из 1
Потоки не хотят работать в полную силу.
    #39927851
cptngrb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток. Решил проверять простые числа (вымышленная задача).
Делаю это процедурой

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
function prost (n : integer) : boolean;
var  r : integer;
begin
if n<2 then result:=false
else
 begin
  r := 2;
  result:=true;
  while (r*r<=n)and result do
  if n mod r=0 then result:=false
  else inc(r);
 end;
end;



А в потоке

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
procedure Execute;
for i:= Low(ArrNumber) to High(ArrNumber) do
  Work(ArrNumber, i);
ArrNumber:=nil;
end;

procedure Work(ArrNumber: TarrNumber; var AIndex: integer);
var
 DKey: string;
dt: TDateTime; 
begin
  DKey:= '';
  
  DKey:= intostr(AIndex) + intotstr(AIndex+1) + inttostr(AIndex+2); //если закоментировать, то загрузка ЦП 80-90%

  if prost(ArrNumber[AIndex]) then dt:=0 
  else dt:= 1;
end;



Если выполнять только одну процедуру prost , то загрузка ЦП 80-90%, а если нет, то 25%.
Проц 8 ядерный. Потоков 16.
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927853
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и нахрена ты насилуешь менеджер памяти строками?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927854
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
нахрена ты насилуешь менеджер памяти строками?
может моделирует поведение типичного дельфового приложения
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927860
cptngrb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,
в Dictionary хочу передать ключ TDictionary<string, TDateTime>
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927861
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
18.02.2020 11:29, cptngrb пишет:
>
> в Dictionary хочу передать ключ TDictionary<string, TDateTime>
>

забудь про строки

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927880
cptngrb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не могу забыть, они мне дороги))
придется словарь переделывать на TDictionary<TObject, TDateTime>. Но в этом варианте своя история(
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927914
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Более скоростной менеджер памяти (как уверяет его автор):
https://github.com/maximmasiutin/FastMM4-AVX
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39927949
cptngrb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmSer, не, буду на стандарте вывозить
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39928091
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cptngrb,

авторесли закоментировать, то загрузка ЦП 80-90%

смотри в сторону TStringBuilder или хотя бы Format (хотя он вроде тоже медленный)
...
Рейтинг: 0 / 0
Потоки не хотят работать в полную силу.
    #39928098
cptngrb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
заменил string на record. Поведение стало понятным
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Потоки не хотят работать в полную силу.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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