Hi Wilfried,
The problem is present because I test of data in the sent machine and the
data not is the same in Receive machine.
If I send 30Kb of data, in the other machine receive 7Kb only; and I don't
know what is the problem.
Send you part of code of application, but I know that information i
> Hi Wilfried,
>
> The problem is present because I test of data in the sent machine and the
> data not is the same in Receive machine.
> If I send 30Kb of data, in the other machine receive 7Kb only; and I don't
> know what is the problem.
> Send you part of code of application, but I know that
Hi Guillaume,
I am using Tsocket UDP because I need transfer high speed data, but is more
complicated because the sent machine send 720 strings in 4 seconds, and a
string maybe contained large data.
The most important in the application is the time, then receive data and
process it must be fast
> procedure TFVisor.overlayListenDataAvailable(Sender: TObject; ErrCode: Word);
> begin
> ...
> processMessage(s);
> ...
> end;
That is the problem. You defenitely can't call ProcessMessages from most of the
event handler of ICS
components and for sure not from OnDataAvailable.
> I am using Tsocket UDP because I need transfer high speed data, but is more
> complicated because the sent machine send 720 strings in 4 seconds, and a
> string maybe contained large data.
> The most important in the application is the time, then receive data and
> process it must be fastest.
Do
Francois,
processMessage is used to parsing the receive string and put the data in an
public array, this array is used for an other process that paint on the screen.
Then I need full data in the string, if not is complete the paint process
do incorrect picture.
Thanks again and I will investigat
So you don't call Application.ProcessMessages or any other message pump form ?
If you do, it is a problem.
--
[EMAIL PROTECTED]
http://www.overbyte.be
- Original Message -
From: "Juan Pablo Franco" <[EMAIL PROTECTED]>
To: "ICS support mailing"
Sent: Friday, August 19, 2005 4:44 PM
Subjec
Maybe ProcessMessage(s) is a call to a function to process the received
data and not Application.ProcessMessage ? Juan can you explain ?
---
Rgds, Wilfried
http://www.mestdagh.biz
Friday, August 19, 2005, 16:15, Francois Piette wrote:
>> procedure TFVisor.overlayListenDataAvailable(Sender: TObje
Hello Juan,
This can explain wy you loose data. UDP is fast but not realble. If you
dont want to loose data then you have to use TCP.
---
Rgds, Wilfried
http://www.mestdagh.biz
Friday, August 19, 2005, 16:11, Juan Pablo Franco wrote:
> Hi Guillaume,
> I am using Tsocket UDP because I need tran
Again,
If I use TCP, the time is over. I need transfer important data in little time.
SENT MACHINE
overlaySocket.SendStr(Msg);
RECEIVE MACHINE:
procedure TFVisor.overlayListenDataAvailable(Sender: TObject; ErrCode: Word);
var
Buffer : array [0..5] of char;
Src: TSockAddrIn;
Yes, it looks that way. Therefore, the problem is that he is processing it
before checking he has received it all, as Guillaume said.
Dan
- Original Message -
From: "Wilfried Mestdagh" <[EMAIL PROTECTED]>
To: "ICS support mailing"
Sent: Friday, August 19, 2005 3:52 PM
Subject: Re: [tw
Juan Pablo Franco a écrit :
> Again,
>
> If I use TCP, the time is over. I need transfer important data in little time.
>
i'm not quite sure TCP has such overhead compared to UDP that your time
window should be over while sending, IMHO.
if you're on a LAN, and that your data processing doesn't
Hi Dan,
I understand you, but the problem is that the paint process in Receive
machine must paint at the same time that the paint process in the Sent machine.
Here is the central point because the UDP protocol is asyncronous and I
need two process in the same time in both machines.
Juan
At 13
> I understand you, but the problem is that the paint process in Receive
> machine must paint at the same time that the paint process in the Sent
> machine.
> Here is the central point because the UDP protocol is asyncronous and I
> need two process in the same time in both machines.
Why not havi
> If I use TCP, the time is over. I need transfer important data in little
> time.
Please give some numbers. TCP is able to transmit really very fast. Depends
on the physical layer. What is your netwrok. What do you have to send (Mbps)
? Can you compress data ? Is it a stream ?
> IF I USE TCP
Hello Juan,
> If I use TCP, the time is over. I need transfer important data in little time.
Ok. If it is not importand to loose data (you can ask server to transfer
it later) because real time is more importand then you have to use UDP,
but if speed is importand then read on.
For the packets yo
- Original Message -
From: "Juan Pablo Franco" <[EMAIL PROTECTED]>
To: "ICS support mailing"
Sent: Friday, August 19, 2005 5:16 PM
Subject: Re: [twsocket] Transfer with UDP
> RECEIVE MACHINE:
> procedure TFVisor.overlayListenDataAvailable(Sender: TObject; ErrCode:
> Word);
> var
>
- Original Message -
From: "Juan Pablo Franco" <[EMAIL PROTECTED]>
To: "ICS support mailing"
Sent: Friday, August 19, 2005 5:34 PM
Subject: Re: [twsocket] Hi, I've a question
> Hi Dan,
>
> I understand you, but the problem is that the paint process in Receive
> machine must paint at the
Hello Juan,
> If I use TCP, the time is over. I need transfer important data in little time.
As Guillaume and others already stated:
> the main problem with UDP is that you know you have sent, but you never
> know *what* has been received - unless you have established a heavy
> protocol which w
19 matches
Mail list logo