Главная страница
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.058 c
2-1152725470
RobinBad
2006-07-12 21:31
2006.07.30
TRichEdit


15-1151649322
antonn
2006-06-30 10:35
2006.07.30
небольшой вопрос по веб-программингу


15-1151779418
Некто
2006-07-01 22:43
2006.07.30
Как красиво дарить цветы?


15-1151314731
ANB
2006-06-26 13:38
2006.07.30
Бутово


15-1151497972
homm
2006-06-28 16:32
2006.07.30
Локальная сеть