Thread Array mit einer Schleife ausgeben
(9 answers)
Opened by grey1987 at 2007-11-28 11:28
also wenn es euch interessiert, ich wollte mein code ein bisschen kleiner machen:
alt: Code (perl): (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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 use IO::Socket; use strict; my $socket = new IO::Socket::INET (PeerAddr =>'PC110197',PeerPort => 1810) or die "Konnte Socket nicht erstellen: $!\n"; $socket->autoflush(1); print "\n"; ########## CREATE CLIENT ########### print "Sende ein Client Create zum Server...\n"; print $socket "CLIENT CREATE\n"; my $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; ########## CONNECT ############ print "\nSende ein CONNECT zum Server...\n"; print $socket "CONNECT\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } ############## PING CGK ############### print "\nSende ein PING GET CGK-IMPORT zum Server...\n"; print $socket "PING GET CGK-IMPORT\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } ############## PING BUSY ############### print "\nSende ein PING GET BUSY-IMPORT zum Server...\n"; print $socket "PING GET BUSY-IMPORT\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } ############## PING COLD ############### print "\nSende ein PING GET COLD-IMPORT zum Server...\n"; print $socket "PING GET COLD-IMPORT\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } ############## PING ZEUS ############### print "\nSende ein PING GET ZEUS-IMPORT zum Server...\n"; print $socket "PING GET ZEUS-IMPORT\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } ########## DISCONNECT ############ print "\nSende ein DISCONNECT zum Server...\n"; print $socket "DISCONNECT\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } ########## ENDSESSION ############ print "\nSende ein END SESSION zum Server...\n"; print $socket "END SESSION\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "Keine Verbindung!"; } print "\n"; $socket->close(); ########### UNTERPROGRAMM ########### sub getlinefromsocket { my $buffer; my $char; while ( $socket->recv( $char, 1 ) ) { last if ( $char eq "\0" ); $buffer .= $char; } return $buffer; } neu: Code (perl): (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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 use IO::Socket; use strict; my $socket = new IO::Socket::INET (PeerAddr =>'PC110197',PeerPort => 1810) or die "Konnte Socket nicht erstellen: $!\n"; $socket->autoflush(1); my $i; my @ping = ("PING1","PING2","PING3") my @list = ("CONNECT","$ping[0]","$ping[1]","$ping[2]","DISCONNECT","END SESSION"); my $letzter = $#list; print "\n"; ########## CREATE CLIENT ########### print "Sende ein Client Create zum Server...\n"; print $socket "CLIENT CREATE\n"; my $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; ######### Befehle ############ while ($i <= $letzter) { print "\nSende ein $list[$i]\n"; print $socket "$list[$i]\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "nichts geht!"; } $i = $i + 1; } } elsif ($line eq "NACK") { print "fehlgeschlagen!"; } else { print "Keine Verbindung!"; } print "\n"; $socket->close(); ########## UNTERPROGRAMM ########### sub getlinefromsocket { my $buffer; my $char; while ( $socket->recv( $char, 1 ) ) { last if ( $char eq "\0" ); $buffer .= $char; } return $buffer; } |