Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 1
Регистрация: 11.06.2012
Сообщений: 40
1

Ограничить число потоков

08.08.2012, 15:56. Показов 1109. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Приветствую. У меня проблема.. Нужно как-нибудь ограничить число создаваемых в цикле параллельных потоков...

Функция, в которой вызываются потоки выглядит так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
lspp = new TStringList();
   Memo4->Lines->Clear();
   HDROP drop_handle = (HDROP)Message.Drop;
   char fName[MAXPATH];
   filenum = DragQueryFile(drop_handle, -1, NULL, NULL);
   for(int i = 0; i < filenum; i++){
      DragQueryFile(drop_handle, i, fName, MAXPATH);
 
lspp->Add(fName);       //Отсюда в потоке берётся файл и добавляется в список, попутно обрабатываясь :)
        Lsp=new ListProcess(true);
        Lsp->Priority=tpNormal;
        Lsp->Resume();
  ::Sleep(10);
  Application->ProcessMessages();     //на всякий случай
 
                                 }
   DragFinish(drop_handle);
 
//  ReadFile(fName);
Это Drag'n'Drop
Хотелось бы чтобы не более 4х потоков вызывалось, т.к. в потоке вызывается внешний архиватор Winrar из командной строки.. и.. если добавить 60+ файлов.. будет не очень приятно железу
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.08.2012, 15:56
Ответы с готовыми решениями:

Ограничить число потоков в QTcpServer-e
С ходу не смог найти как можно ограничить кол-во потоков на подключенных к серверу сокетах, по...

Server socket как ограничить число потоков
Добрый день! Есть server socket, который ожидает подключение клиентов. Для каждого клиента...

Возможно ли ограничить запуск потоков
Добрый день. Подскажите, есть несколько потоков MyThread, которые запускаются горячей кнопкой,...

Ограничить число запросов к серверу
Существует ли надежный способ как-то идентифицировать клиентскую машину, чтобы ограничить...

2
1123 / 794 / 101
Регистрация: 01.02.2011
Сообщений: 1,879
Записей в блоге: 1
08.08.2012, 18:44 2
как вариант - прочитать про пул потоков
0
Эксперт С++
8385 / 6147 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
08.08.2012, 21:22 3
Первое что бросается то что у вас не синхронизации в vcl-компонентами.

Второе - что мешает сохранить имена файлов и только потом порождать заданное число потоков
0
08.08.2012, 21:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.08.2012, 21:22
Помогаю со студенческими работами здесь

Ограничить число знаков в StringGird
Здравствуйте. Подскажите как ограничить число в StringGird. Например у меня число 1553,1021728, а...

ComboBox ограничить число айтемов
Всем привет! Задача вроде простая, но хочу поинтересоваться)Как сделать максимально-возможное число...

Ограничить число подсказок AutoCompleteTextView
Как сделать так чтобы когда пользователь вводит текст в поле AutoCompleteTextView, ему...

Как ограничить вводимое число?
a = int(input()) Как сделать так, чтобы нельзя было ввести &quot;a&quot; больше 10 и меньше 1?

Ограничить число новостей в рассылке
Здравствуйте! Как в автоматической рассылке сделать отображение только 5 новостей? В данный момент...

Ограничить число узлов в treeview
народ подскажите, пожалуйста, возможно ли ограничить количество nodes в treeview?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru