Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Вниз

помогите с разобраться с потоками   Найти похожие ветки 

 
KSergey ©   (2005-01-10 11:11) [40]

>  Zahar   (09.01.05 15:31)
> Есть текстовый файл в котором N-строк с числами (для примера
> возьмем 300).

Хотелось бы по исходной задаче немного написать.
Если это просто учебная проба - то ладно.
А вообще имейте в виду, что один поток (например - основной) в итоге обработает вась файл быстрее, нежели N параллельных, обрабатывающих разные куски файла.


 
Alexander Panov ©   (2005-01-10 11:14) [41]

KSergey ©   (10.01.05 11:11) [40]
А вообще имейте в виду, что один поток (например - основной) в итоге обработает вась файл быстрее, нежели N параллельных, обрабатывающих разные куски файла.


Если система однопроцессорная. Но и при этом условии тоже не факт. Зависит от того, какая обработка данных проводится , от контроллра дисков, от объема RAM и пр...


 
TUser ©   (2005-01-10 11:29) [42]

ИМХО, использование нескольких потоков для данной задачи нужно непонятно зачем - оно приведет лишь к замедлению работы с файлом.


 
KSergey ©   (2005-01-10 12:57) [43]

> [41] Alexander Panov ©   (10.01.05 11:14)
> KSergey ©   (10.01.05 11:11) [40]
> Если система однопроцессорная. Но и при этом условии тоже
> не факт.

ПРи каком "этом"? При многопроцессорности или однопроцессорности?


 
sniknik ©   (2005-01-10 14:37) [44]

> ПРи каком "этом"? При многопроцессорности или однопроцессорности?
так понимаю смотря что "тормозит", если расчеты то вряд ли разнесение по потокам даст прирост скорости...
но вот если поток в основном занимается ожиданием события какого нибудь то несколько вполне мугут сработать быстрее (пример FlashGet при закачке в несколько потоков). и неважно сколько процессоров. ;)


 
sniknik ©   (2005-01-10 14:47) [45]

olookin ©   (10.01.05 10:30) [39]
> " имелось в виду НАЗНАЧЕНИЕ свойства, а не его чтение.

чтение тоже "чревато" последствиями, ты читаеш другой поток пишет в итоке ты получил неопределенное значение, часть от старого часть нового значения. это хорошо?
ну и потом даже чтение свойства (property) может вызывать довольно сложные процедуры (и на запись тоже) смотря как оно реализовано, а если (например) гдето подсчет вхождений в свойство идет и выход только с парным (вход + выход -, и выйдет только если 0), ты туда влез незапланировано... и в итоге "клинч" ни ты ни основной поток работать не можете, зависли в обработке проперти. (только как пример!)


 
olookin ©   (2005-01-10 15:30) [46]

[45] sniknik ©   (10.01.05 14:47)

Согласен, но в отношении моего кода - могу я беспрепятственно читать "имя" компонента, или это тоже чревато?


 
sniknik ©   (2005-01-10 17:04) [47]

olookin ©   (10.01.05 15:30) [46]
нельзя! ни в коем случае (даже если на первый взгяд кажется что можно, и не с чем не пересекается не изменяется и .т.д.)
всегда есть вероятность (и очень очень большая) что гдето чтото не учел, мало ли событий в которых туда же обращение и блокировки ставятся. (onPaint например, ты учитывал? в нем тоже должно быть обращение к компонентам формы) а если вдруг исключение будет? там по ексепту VCL-ная форма с мессажем подымается, в потоке  это недопустимо.



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

Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.54 MB
Время: 0.035 c
9-1095732632
Jus
2004-09-21 06:10
2005.01.23
Хочу написать игру лоде-рунер(с редактором карт)на движке DelphiX


11-1085817453
Майк_110
2004-05-29 11:57
2005.01.23
ListView, lvoCheckboxes, lvoOwnerData - проблемка


1-1105350232
Nexel
2005-01-10 12:43
2005.01.23
Мерцатель млин...


1-1105287810
Ph2005
2005-01-09 19:23
2005.01.23
Печать html страниц


8-1097613042
AKA
2004-10-13 00:30
2005.01.23
BMP to ICO





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский