Главная страница
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.027 c
15-1152002513
ПЛОВ
2006-07-04 12:41
2006.07.30
Существует ли что-то вроде универсального драйвера для IrDA?


2-1152236593
SerJaNT
2006-07-07 05:43
2006.07.30
Подскажите запрос


2-1152532623
SergeyG
2006-07-10 15:57
2006.07.30
Как сделать, чтобы форма и расположенные на ней компоненты


15-1150989285
k2
2006-06-22 19:14
2006.07.30
Ситуйены модераторы, в Базах балуются


1-1150371628
Billis
2006-06-15 15:40
2006.07.30
Как из Thread обращ. к объектам на активной MDI-дочерней форме?