![]() |
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Højtstående Programmering Post spørgsmål om C, C + +, Java, SQL, og andre programmerings sprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| den givne kode går i uendelig løkke og ikke tilvækst variable i | mrityunjay22 | Shell Programmering og Scripting | 6 | 12-26-2007 02:20 AM |
| Infinite Loop i Autosys samtidig kører en shell script, Manuel køre er fine | sharmagaurav_2k | Shell Programmering og Scripting | 2 | 09-04-2007 09:20 AM |
| BEA ind i CEP marked med Weblogic Event Server | iBot | Complex Event Processing RSS Nyheder | 0 | 08-10-2007 12:50 AM |
| ls kommando i uendelig løkke | umakant | Sun Solaris | 3 | 07-17-2007 02:25 AM |
| høj prioritet tråd indeholder en uendelig løkke | rvan | Højtstående Programmering | 0 | 02-14-2007 09:30 AM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
pick fejlen serveren træder en uendelig løkke
her er den server-og klientsiden kode nu der er en fejl, efter hvilken server træder en uendelig loop.the server er udformet som et ekko-server, og hvis det lyder / q derefter serveren lukker mens kunden kan sende beskeder til / q nu efter frst besked, når en anden besked er send uendelig løkke er opført
Server-kode Code:
while(j!=0)
{
memset(buffer,0,1024);/*clear buffer*/
n = read(newsockfd,buffer,1024);/*read from client*/
if (n < 0) perror("\n ERROR reading from socket \n");/*check for errors*/
len=strlen(buffer);
puts(buffer);/*print message by client*/
write(newsockfd,"\n Client wrote \n",12);/*write to client*/
n=write(newsockfd,buffer,sizeof(buffer));/*write to client*/
if(n<0)perror("Write Failed");
while(i<len)
{
//printf("%d\n",i);
j= strcmp(buf,&buffer[i]);
if(j==0)
break;
i+=2;
}
Code:
while(j==0)
{
printf("\n Enter Message for Server");
gets(buf);
/* now that we are connected, start writing to the socket */
/* till write() returns 0, meaning the server closed */
/* the connection. */
rc = write(s, buf,sizeof(buf));
if(rc<0)
{
perror("write failed");
}
else
{
read(s,buf1,12);
read(s,buf2,sizeof(buf));
}
puts(buf1);/*print messages from server*/
puts(buf2);/*print messages from server*/
printf("want to write more data");
gets(ans);
j=strcmp(ans,"yes");
break;
}
}
Sidst redigeret af vino; 07-18-2007 på 10:17 AM.. Årsag: tilføjet kode tags |
|
||||
|
Code:
n = read(newsockfd,buffer,1024);/*read from client*/
if (n <= 0)
{
perror("\n ERROR reading from socket \n");/*check for errors*/
break;
}
|
|
||||
|
en anden fejl
Hey Porter
det frst bug fastsættes nu en anden fejl har come.if klientsiden efter "vil sende en besked" typer ja serveren fungerer godt, men når bortset fra ja enhver anden besked er skrevet i serveren igen træder uendelig loop.how at fjerne dette |
|
||||
|
Jeg kunne se, at det ikke er korrigeret for en kodestykke i kundens kode også.
Brug Porter's Point til adresse overalt når forventede afkast værdi ikke er vendt tilbage fra en af sende / læse Code:
rc = write(s, buf,sizeof(buf));
if(rc<0)
{
perror("write failed");
}
|
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|