Thread Server+Client=Kommunication ... oder auch nicht (3 answers)
Opened by Agent Smith at 2003-12-04 23:26

Agent Smith
 2003-12-04 23:26
#74379 #74379
User since
2003-09-23
4 Artikel
BenutzerIn
[Homepage] [default_avatar]
hallo erstmal,

ich habe vor kurzem angefangen mich mit sockets zu beschäftigen. Das prog um das es hier geht, besteht aus server und client und soll irgendwann mal sowas wie n chat werden.

so jetz zum problem:
Der client soll zum server connecten, worauf hin der server dem client hallo sagen soll. dannach soll der client text an den server schicken, den dieser ausgeben soll. klingt garnet so kompliziert, oder?
das prob is jetz aber, dass das ganze aus mir unerklärlichen gründen hängen bleibt. und zwar wenn ich den server starte, gibt dieser "zu client connectet" aus. der client gibt das hallo vom server aber nicht aus, und schickt ihm auch nicht den text in $text (auf jeden fall gibt der server den text nicht aus). wenn ich den server allerdings beende, gibt der client das hallo vom server aus. das ganze funkt auch wenn ich beim server
Code: (dl )
1
2
$ausgabe = <$new_sock>;
print $ausgabe;

rausnehme. das is aber nich der sinn der sache, soll ja n dialog werden.

SERVER:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use strict;
use IO::Socket;

my $ausgabe;

print "-------server-------\n\n";

my $sock = new IO::Socket::INET (LocalAddr => 'localhost',
LocalPort => 8888,
Portto => 'tcp',
Listen => 1,
Reuse => 1) || die "$!";
my $new_sock = $sock->accept();


print "zu client connectet!";
print $new_sock "hallo!";

$ausgabe = <$new_sock>;
print $ausgabe;


close($new_sock);

my $windoof = <STDIN>;


CLIENT:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use strict;
use IO::Socket;

my $text;

print "-------client-------\n";

my $sock = new IO::Socket::INET (PeerAddr => 'localhost',
PeerPort => 8888,
Portto => 'tcp') || die "$!";

my $hallo = <$sock>;
print "$hallo\n\n";

$text = "huhu";
$sock->send($text);


close($sock);

my $windoof = <STDIN>;


Ich hab leider keine ahnung wo (und vor allem warum) das ganze hängt. ich hoff ma es is irgendwas sehr simples, was es wohl auch sein wird, bei dem mächtigen und komplexen programm :D

also thx erstmal, adam

... Und macht doch bitte das eingabefenster größer, es is grausig in diesem winzigen ding ein beitrag zu verfassen.

View full thread Server+Client=Kommunication ... oder auch nicht