in reply to Re^4: Two TCP Connections, one script
in thread Two TCP Connections, one script

If you are reading telemetry from one port and writing (derived?) waypoints to the other, why do you need concurrency? On the surface, it sounds much like a simple filter program using sockets instead of pipes?

Something as simple as this might be all you need:

use IO::Socket; use XML::Simple; my $cTelemetry = IO::Socket::INET->new( 'localhost:12345' ) or die $!; my $cWaypoints = IO::Socket::INET->new( 'localhost:6789' ) or die $!; while( <cTelemetry> ) { my $xmlTelemetry = XMLin( $_ ); if( my $xmlWaypoint = deriveWaypoint( $xmlTelemetry ) ){ print $cWaypoints $xmlTelemetry; } }

That leaves you to write the code for deriving waypoints from telemetry data, but unless that is a slow process, there does not seem much scope for concurrency here?


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"Too many [] have been sedated by an oppressive environment of political correctness and risk aversion."