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

Вниз

threads   Найти похожие ветки 

 
oleggar ©   (2005-12-16 12:30) [0]

мне понадобилось в Делфи написать многопоточное приложение .Все работает ,я только не пойму одного из-за разночтений в документации -что нужно выносить в синхронизационную процедуру,так что потом вызывается через synhronize ? все процедуры отрисовки ,все процедуры ,обращающиеся к VCL ,например tsocketserver ,или все обращения к компонентам ,и VCL и не VCL ,которые авторы
объявили в документации "not thread-safe" ?и еще .Если я запускаю synchonize в процедуре Execute потока ,цикл в execute продолжается мгновенно ,или когда синхропроцедура отработает ?и последнее.может ли быть в потоке несколько синхропроцедур и можно ли их запускать через 2 synhronize так
procedure execute
begin

repeat
a:=a+1;

synhronize(1proc);
synhronize(2proc)

until 1=2;

end;


 
Digitman ©   (2005-12-16 12:39) [1]

в Synchronize() следует выносить , прежде всего, те обращения к визуальным VCL-объектам, которые ведут к модификации канвы

туда же можно (но необязательно нужно, а порой и вредно) вынести обращения к прочим объектам, не допускающим одновременный доступ со стороны более чем одного код.потока


 
oleggar ©   (2005-12-16 12:47) [2]

верю .рискну так сделать .а ты много многопоточных приложений больших ,а не учебных сделал ?для меня это второе ,1 еще работает .но оно было проще ,а это вообще огромное


 
Alexander Panov ©   (2005-12-16 13:49) [3]

oleggar ©   (16.12.05 12:47) [2]
верю .рискну так сделать .а ты много многопоточных приложений больших ,а не учебных сделал ?для меня это второе ,1 еще работает .но оно было проще ,а это вообще огромное


Прими за правило - код, использующий общие для разных потоков объекты, защищать критическими секциями.


 
Digitman ©   (2005-12-16 13:52) [4]


> а ты много многопоточных приложений больших ,а не учебных
> сделал ?


А это имеет отношение к твоему делу ?

Думаю - нет.

Сколько бы их ни было (у тебя или у меня), подход д.б. один - прежде чем сотворять задуманое, нужно внимательнейшим образом проштудировать справку (лучше - MSDN) и подкрепить/опровергнуть свои предположения по логике работы TThread детальным изучением соотв.фрагментов исх.кода этого класса



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

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

Наверх




Память: 0.48 MB
Время: 0.027 c
14-1135745246
Хинт
2005-12-28 07:47
2006.01.22
Кто-нибудь знаком с программой ЛАД?


14-1135366258
meta_person
2005-12-23 22:30
2006.01.22
put_in: оптимизированный тоталитаризм


2-1136469766
ArtemESC
2006-01-05 17:02
2006.01.22
Оттенки цветов...


8-1123406740
Adler
2005-08-07 13:25
2006.01.22
Графические эффекты


3-1132810047
megaspring
2005-11-24 08:27
2006.01.22
Запросы&Access