![]() |
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.
|
|
google unix.com
|
|||||||
| Foros | Registro | Reglas de los Foros | Enlaces | Álbumes | Preguntas más frecuentes | Lista de miembros | Calendario | Búsqueda | Puestos de hoy | Marcar Foros Como Leídos |
| Programación de Alto Nivel Plantear preguntas acerca de C, C + +, Java, SQL, y otros lenguajes de programación aquí. |
Más UNIX y Linux Foro Temas usted puede encontrar útiles
|
||||
| Hilo | Hilo para principiantes | Foro | Respuestas | Último mensaje |
| el código va en bucle infinito, y no de incremento variable i | mrityunjay22 | Programación de scripts de shell y | 6 | 12-26-2007 02:20 AM |
| Bucle infinito en Autosys mientras ejecuta un script de shell, ejecutar manual está bien | sharmagaurav_2k | Programación de scripts de shell y | 2 | 09-04-2007 08:20 AM |
| BEA entra en el mercado con el CEP de eventos del servidor Weblogic | iBOT | Complejo de Procesamiento de Eventos Noticias RSS | 0 | 08-09-2007 11:50 PM |
| comando ls en bucle infinito | umakant | Sun Solaris | 3 | 07-17-2007 01:25 AM |
| alta prioridad hilo contiene un bucle infinito | rvan | Programación de Alto Nivel | 0 | 02-14-2007 09:30 AM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
recoger el error el servidor entra en un bucle infinito
aquí es el cliente y el servidor el código ahora hay un fallo después de que el servidor entra en un infinito loop.the servidor está diseñado como un eco de servidor y de si se lee / q, entonces el servidor se cierra mientras que el cliente puede enviar mensajes de hasta / q ahora después de la FRST mensaje cuando se envía otro mensaje bucle infinito, se introduce
Servidor de código Código:
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;
}
Código:
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;
}
}
Última edición por vino; al 07-18-2007 09:17 AM.. Motivo: añadido etiquetas de código |
|
||||
|
Código:
n = read(newsockfd,buffer,1024);/*read from client*/
if (n <= 0)
{
perror("\n ERROR reading from socket \n");/*check for errors*/
break;
}
|
|
||||
|
otro error
hey porter
FRST el error se fija ahora otro error ha come.if después de la del lado del cliente "desea enviar otro mensaje" tipos sí el servidor funciona bien, pero cuando sí, aparte de cualquier otro mensaje es escrito en el servidor de nuevo entra en infinitos loop.how para eliminar esto |
|
||||
|
Pude ver que no es corregido en función de un fragmento en el código del cliente también.
Uso del cargador punto para hacer frente a todo el mundo espera volver cuando no se devuelve el valor de cualquiera de enviar / leer Código:
rc = write(s, buf,sizeof(buf));
if(rc<0)
{
perror("write failed");
}
|
![]() |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|