Thread Socket-Server, ich verstehe es nicht ganz: Perl-Server+C#-Client-> Bi-Direkt.-Verbi (15 answers)
Opened by Gast at 2007-02-20 14:14

Gast Gast
 2007-02-20 14:14
#37459 #37459
Hi,

es geht um einen Socket-Server in Perl. Er soll Verbindungen mit einem C#-Programm annehmen können. Das C#-Programm soll dem perl-Server Daten schicken, dieser wiederum antworten.

Aber ich bekomme keine befriedigenden Ergebnisse, das liegt sicher daran, dass ich ein absoluter Perl-Anfänger bin. In die FAQ habe ich schon geschaut und auch ein toturial durchgelesen, ich blicke es aber nicht ganz :-(

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl

use IO::Socket;

my $client = 0;
my $server_socket = new IO::Socket::INET ( localPort => 13, Listen => $SOMAXCONN, Proto => 'tcp', Reuse => 1) || die "blabla";

print "\nWartend..\n";

&read();

$server_socket->close();

sub read()
{
$client = $server_socket->accept();
print <$client>;
}


Es funktioniert (schon mal gut), d.h. ich kann mit dem C#-Client-Programm einen text rüberschicken, aber der Text wird nur angezeigt, sobald der Client die verbindung trennt.

Dabei müsste der text doch sofort ausgegeben werden, nachdem sich der Client verbunden hat, also gleich nach accept()??!?

Wo liegt mein Denkfehler?

Für Tipps wäre ich echt dankbar, ist übrigens mein erstes Posting hier.

View full thread Socket-Server, ich verstehe es nicht ganz: Perl-Server+C#-Client-> Bi-Direkt.-Verbi