> Now I got it
UDP packets are not fragmented at the application level, but you may get
duplicates, or miss some packet, recieve the packets in incorrect order.
Those conditions are very difficult to reproduce on a small LAN. You have to
have a large LAN with different speed in different subnet
>> There are surely ways to design it to avoid scanning a list of
>> components. A standard TTimer is probably not the best design either.
>> Probably a dedicated thread could do the job, using
>> MsgWaitForMultipleObjectsEx to make the thread sleep until the next
>> event to be signaled. The event
Francois PIETTE wrote:
Hmm, I see multi-threading issues, since a timer always fires in
context of the thread where it has been created.
>>>
>>> What if TIcsTimer post a message to the calling component when the
>>> programmed timer event has occured ? Wouldn't this would solve all
>>>
>>> Hmm, I see multi-threading issues, since a timer always fires in
>>> context of the thread where it has been created.
>>
>> What if TIcsTimer post a message to the calling component when the
>> programmed timer event has occured ? Wouldn't this would solve all
>> multithread issues ?
>
> Then
Francois PIETTE wrote:
>> Francois PIETTE wrote:
>> Concerning a client idle timeout in a server application/component
>> where would you refresh client's last alive time stamp? It's clear to
>> refresh it in OnDataAvailable, but that is not enough, it has to be
>> refreshed also when data is being
> Francois PIETTE wrote:
>>> I would also vote for a built-in timer since any server needs to
>>> perform some tasks periodically, so probably deriving from
>>> TComponent plus a window receiving timer messages is a good choice.
>>
>> Most communication application and many other needs to perform s
Francois PIETTE wrote:
>> I would also vote for a built-in timer since any server needs to
>> perform some tasks periodically, so probably deriving from
>> TComponent plus a window receiving timer messages is a good choice.
>
> Most communication application and many other needs to perform some
>