- 论坛徽章:
- 0
|
client:
- while(1){
- for(i = 0;i<3;i++){
- memcpy(lstr,str[i],strlen(str[i]));
- printf("lstr==%s\n",lstr);
- if ((len = send(socket_descriptor,lstr,strlen(lstr),0)) == -1)
- {
- perror("Error in send\n");
- exit(1);
- }
- memset(lstr,0,strlen(str[i]));
- sleep(2);
- }
- }
-
- }
复制代码
server:
- for(;;){
- printf ("Accepting connections....\n");
- if( (temp_sock_descriptor = accept(sock_descriptor,(struct sockaddr *)&pin,&address_size)) == -1)
- {
- perror("call to accept");
- exit(1);
- }
-
- int i = 0;
- for(;;){
-
- if ((lens = recv(temp_sock_descriptor,buff,sizeof(buff),0)) == -1){
- printf("call to recv...\n");
- break;
- }
- a = buff;
- printf("i==%d\n",i);
- printf("buff=%sYYYYYY\n",buff);
- Decode(a,lens);
- memset(buff,0,strlen(buff));
- if ((len = send(temp_sock_descriptor,tbuff,sizeof(tbuff),0)) == -1){
- printf("call to send....\n");
- break;
- }
- i++;
- }
- }
- }
复制代码
我发现客户端不停地发送数据的时候,到了一定时间,我的服务端好像从停在recv读数据那一步,然后我一关闭客户端,立即打印出一大串应该早被打印的数据内容(客户端发送来的是不同的数据,本来应该一条一条被解码,可是打印的结果,好像所有的数据同时进入到我设定的buff里面) |
|