Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.30;
Скачать: CL | DM;

Вниз

Работа с потоками...   Найти похожие ветки 

 
KaLLeKa   (2006-07-08 17:19) [0]

Доброе время суток. Моя программа обрабатывает большое кол - во записей с TStringListe. Проходит это все в одной процедуре. Мне сказали что целесообразнее было бы сделать так, чтобы список обрабатывался двумя потоками работающими одновременно, первый до середины списка а второй с середины и до конца. К сожалению делфийский хелп мне мало чем сумел помочь в вопросе создания потоков((
Подскажите пожалуйста где почитать что нибудь об этом, или если можно, было бы здорово посмотреть уже какой нибудь готовый примерчик по созданию двух потоков которые что то делают...
Мне не понятно как запускать функции потоков с передавать в них данные.. Сколько не мучался - ничего не выходит((


 
Шпиён   (2006-07-08 17:27) [1]

http://www.delphimaster.ru/articles/panov/index.html


 
Virgo_Style ©   (2006-07-08 17:33) [2]

не уверен в целесообразности


 
Шпиён   (2006-07-08 18:18) [3]


> Virgo_Style ©   (08.07.06 17:33) [2]

А вдруг у него многопроцессорный компьютер? -))

В случае однопроцессорного компьютера - действительно нецелесообразно. Но вот вынести обработку в отдельный поток -  может быть и имеет смысл (тут зависит от конкретной программы), чтобы не "тормозить" пользовательский интерфейс.

> KaLLeKa   (08.07.06 17:19)

При запуске многопоточного процесса в системе с одним процессором потоки работают поочередно. Процессор быстро переключается между потоками, создавая впечатление параллельной работы потоков, хотя и не на столь быстром процессоре. В случае двух ограниченных производительностью процессора потоков в одном процессе  потоки будут работать параллельно, и каждому потоку будет соответствовать виртуальный процессор с быстродействием, равным 1/2 быстродействия реального процессора.
Когда имеется одновременная потребность в выполнении большого объема вычислений и операций ввода - вывода, наличие потоков позволяет совместить эти виды деятельности во времени, тем самым увеличивая общую скорость работы приложения.


 
Virgo_Style ©   (2006-07-08 18:22) [4]

Шпиён   (08.07.06 18:18) [3]
равным 1/2 быстродействия реального процессора


минус расходы на организацию многопоточности


 
Шпиён   (2006-07-08 18:24) [5]

И, кроме того, появятся дополнительные  "затраты" на переключение между потоками. Та что 1/2 - это даже слишком оптимистично -)


 
Шпиён   (2006-07-08 18:24) [6]


> Virgo_Style ©   (08.07.06 18:22) [4]

Не видел, когда писал [5]



Страницы: 1 вся ветка

Текущий архив: 2006.07.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
2-1152683429
general
2006-07-12 09:50
2006.07.30
При печати из TPrinter кириллицы выходят кракозябры


15-1151664713
NewStar:)
2006-06-30 14:51
2006.07.30
Хочу научиться


15-1150815280
СК
2006-06-20 18:54
2006.07.30
Консультация Юриста


15-1151480626
PVOzerski
2006-06-28 11:43
2006.07.30
Вопрос о качестве звуковых карт в ноутбуках


6-1142512145
Новочеркасский Волк
2006-03-16 15:29
2006.07.30
Виновата ли ADSL или в чём ошибка???