Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2011, 01:56   #1
Crystallon
Форумчанин
 
Регистрация: 05.04.2010
Сообщений: 273
По умолчанию Создание большого количества потоков

Стандартным образом я создаю поток так:
Код:
type
  TMyThread = class(TThread)
  public
    procedure Execute; override;
  end;

procedure TMyThread.Execute;
begin
//
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  MyThread: TMyThread;
begin
  MyThread:=TMyThread.Create(False);
end;
Как мне в цикле создать нужное мне количество потоков?
Мне приходит голову только как-то так:
Код:
var
LoadThread: array [0..5000] of TThread;

for i:=1 to 50 do
begin
LoadThread[ThreadID] := TMyThread.Create(False);
end;
Но конечно это не работает...
Подскажите как правильно записать кодом мою мысль =)
Crystallon вне форума Ответить с цитированием
Старый 03.06.2011, 02:05   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
LoadThread: array [0..5000] of TThread;

for i:=0 to 5000 do
begin
LoadThread[i] := TMyThread.Create(False);
end;
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.06.2011, 02:34   #3
Crystallon
Форумчанин
 
Регистрация: 05.04.2010
Сообщений: 273
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
Код:
LoadThread: array [0..5000] of TThread;

for i:=0 to 5000 do
begin
LoadThread[i] := TMyThread.Create(False);
end;
В коде TMyThread.Execute находится загрузка определенной картинки, если вызываю старым способом(без массива) TMyThread.Create(False); то HTTP анализер показывает что картинка загрузилась, а если ставлю этот код то HTTP анализер молчит(а поидее картинка должна загрузиться аш 5 раз(у меня так стоит)). Только вот вопрос - зачем вы поставили to 5000? В обьявлении массива я такую большую цифру поставил "прозапас" и на сколько я знаю ей не обязательно быть равной той циверке которая стоит после to, главное чтобы меньше не была...
Crystallon вне форума Ответить с цитированием
Старый 03.06.2011, 02:42   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

тут уже надо смотреть код потока.
может он у вас плох.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Контроль количества потоков в с++ Veroonya Общие вопросы C/C++ 0 06.10.2010 08:26
Как свести информацию из большого количества файлов в один Rahmeev Microsoft Office Excel 3 21.05.2010 07:11
Проблема большого количества форм... Mr.Qwerty Общие вопросы Delphi 2 16.07.2009 16:53
Запись в один файл большого количества информации pregmatch Общие вопросы C/C++ 5 09.03.2009 14:09
непрерывная смена большого количества фотографий brenfire Помощь студентам 5 08.08.2008 11:23