[DUG] Reference counting
Kyley Harris
kyleyharris at gmail.com
Fri Nov 25 14:05:01 NZDT 2005
> wanted the audio engine to be separate from the application which
> controls it. So I have 2 apps which needed fast communication, since
> it's providing VU meter data and elapsed times etc continuously 20 times
> a second. I don't think TCP would handle that well.
;) I Think you should test. TCP runs as fast as your network card. so
around 10mb per second
on a 100mb card.
The following code runs at around 5,500 iteratations a second as a ping
returning same
quantity of data, not 20.... As I said, its not TCP thats slow, its the
programmers who implement
stuff on top of it.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
i:integer;
l:TLIst;
c:cardinal;
begin
IdTCPClient1.Host := 'localhost';
IdTCPClient1.Port := 11000;
IdTCPClient1.Connect;
i := 0;
c := GetTickCount;
repeat
IdTCPClient1.WriteLn('Testing one two three four five size seven
eight');
IdTCPClient1.ReadLn;
Inc(i);
until GetTickCount-c > 1000;
showmessage(inttostr(i));
end;
On Fri, 25 Nov 2005 12:07:06 +1300, Ross Levis <ross at stationplaylist.com>
wrote:
> TCP is definately useful. I've implemented a remote utility to check
> the status of my player and provide some control and details of what's
> playing etc, but I decided to use the memory sharing facility because I
> wanted the audio engine to be separate from the application which
> controls it. So I have 2 apps which needed fast communication, since
> it's providing VU meter data and elapsed times etc continuously 20 times
> a second. I don't think TCP would handle that well.
>
> This system allows users to install an update to the controlling
> application without stopping play, assuming the audio engine doesn't
> need updating as well. This is useful since it is designed for radio
> broadcasting.
>
> Ross.
More information about the Delphi
mailing list