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

Вниз

TIDHTTPserver в каком потоке выполняется IdHTTPServer1CommandGet   Найти похожие ветки 

 
redlord   (2007-04-12 22:35) [0]

всем привет.
народ подскажите в каком потоке выполняется
проседура IdHTTPServer1CommandGet
компонента Tidhttpserver ?

для каждого подключившегося клиента в своем потоке
или в потоке главной формы

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


 
Dmitrij_K   (2007-04-12 23:16) [1]

А самому проверить?
GetCurrentThread()


 
redlord   (2007-04-12 23:23) [2]

все генеальное  просто ))))

спасибо


 
redlord   (2007-04-16 17:37) [3]

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

if flag = true then beep;
flag:=true;
listbox1.Items.add("thrd : "+inttostr(GetCurrentThread));

sleep(500);
flag:=false;


 
Reindeer Moss Eater ©   (2007-04-16 17:43) [4]

GetCurrentThread() показывает что все обрабатывается в потоке формы
следовательно поочереди


Не то показывает и не там.
Никакой "поочереди" нет.


 
redlord   (2007-04-16 18:20) [5]

в смысле не то и не там ?

в обработчике нажатия кнопки  и в IdHTTPServer1CommandGet
listbox1.Items.add("thrd : "+inttostr(GetCurrentThread));
выдает одно и тоже значение

p.s.  я ни кому ничего не пытаюсь доказать, я хочу понять .


 
umbra ©   (2007-04-16 19:16) [6]


> народ подскажите в каком потоке выполняется
> проседура IdHTTPServer1CommandGet
> компонента Tidhttpserver

в контексте сессии с клиентом, давшим запрос. Т.е. не в основном потоке.


> GetCurrentThread()

а что вы хотите, чтобы эта функция Вам дала? Может Вы имели в виду GetCurrentThreadId ?



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
9-1164018658
Ярослав Ерёменко
2006-11-20 13:30
2007.12.23
Алгоритм отрисовки тайлов методом альфа-блендинга


15-1195607659
Mozart
2007-11-21 04:14
2007.12.23
Видеонаблюдение


15-1195725467
@!!ex
2007-11-22 12:57
2007.12.23
программирование под Linux


2-1196011998
Sonia
2007-11-25 20:33
2007.12.23
Числа Фибоначчи и рекурсия


2-1195885117
Alex_C
2007-11-24 09:18
2007.12.23
Не работает программа под Vista