Вниз
Скачать: CL | DM;

прием данных в разных потоках   Найти похожие ветки 

← →
ILNARus ©   (2008-05-07 15:31) [0]

из разных компьютеров в инете приходят короткие данные (30-150 байт).

1)связь иницируется входящем.
2)на каждый компьютер создается свой поток.
3)если между приходами данных меньше 5 сек, то буффер пополняется, если больше 5 сек, то данные записывается в БД, буфер обнуляется
4)если нету данных больше 3 мин, то поток завершается.
5)должен работать как сервис

как и на чем (классы, компоненты, библиотеки и т.п.) лучше реализовывать.

с потоками и сетью раньше не приходилось сталкиватся, только с БД.


← →
Сергей М. ©   (2008-05-07 16:38) [1]

Самое простое - TTCPServer TServerSocket (штатные компоненты в составе Д7)

Из сторонних - серверные компоненты в составе библиотек ICS или Indy (последний, хоть он и поставляется вместе с Д7, лучше не использовать по ряду веских причин)


← →
Дмитрий Белькевич ©   (2008-05-09 01:55) [2]

>последний, хоть он и поставляется вместе с Д7, лучше не использовать по ряду веских причин

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

Единственое - лучше обновить до последнй версии.

Могу предположить, что в каких-то особенных случаях может что-то не работать, но при простом приёме/передаче работает идеально.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
8-1184697814
opoloXAI
2007-07-17 22:43
2009.12.06
MMSystem.pas => waveInGetNumDevs / waveInGetID


2-1256034430
Фуфик
2009-10-20 14:27
2009.12.06
Сменить путь в ADOConnection


15-1255012142
Leonid Troyanovsky
2009-10-08 18:29
2009.12.06
Похороните меня за плинтусом


6-1210255588
AtZako
2008-05-08 18:06
2009.12.06
Разорвать OnHeadersAvailable


15-1254960767
brother
2009-10-08 04:12
2009.12.06
На что направлен этот развод?




   Наверх