57 while(1) {
58 clnt_addr_size = sizeof(clnt_addr);
59 clnt_sock = accept(serv_sock, (struct sockaddr*)&clnt_addr, &clnt_addr_size);
60 if( clnt_sock == -1)
61 error_handling("accept() error");
62
63 printf("새로운 클라이언트가 입장하였습니다. IP : %s \n", inet_ntoa(clnt_addr.sin_addr));
64
65 pthread_mutex_lock(&mutx);
66 clnt_socks[clnt_number] = clnt_sock;
67 clnt_number++;
68 pthread_mutex_unlock(&mutx);
69
70
71 pthread_create(&clnt_thread,NULL, clnt_handling, (void *)clnt_sock);
72
73 }
74
75
76 return 0;
77 }
이게 서버 에서 클라이언트 받는 코드이고
void* send_message (void* arg)
71 {
72 int serv_sock = (int) arg;
73 char message[BUFSIZE];
74
75 while(1) {
76 memset(message, 0, sizeof(message));
77 fgets(message, BUFSIZE, stdin);
78 if(!strcmp(message, "q\n")) {
79 close(serv_sock);
80 exit(0);
81 }
82 write(serv_sock, message, strlen(message));
83 fflush(stdin);
84 printf("보내기 확인\n");
85 }
86
87 }
88
89 void* recv_message (void* arg)
90 {
91 int serv_sock = (int) arg;
92 char message[BUFSIZE + NAMESIZE];
93 int str_len;
94 printf("recv_message 입장\n");
95
96 while(1) {
97 memset(message, 0, sizeof(message));
98 str_len = read(serv_sock, message, BUFSIZE);
99 if(str_len = -1) return (void *)1;
100 message[str_len] = 0;
101 fputs("받기 확인\n",stdout);
서버가 받은뒤에 다시 보내주면되지 물론 코드는 안봄- 자바 장작노예
작성자인데 ㅠㅠ 다시 보내줬거든?? 보냇다는거 확인은 됫는데
recv_message 에서 while문이 안돌아간다 ㅠㅠ
함수 똥가리에는 문제가 없다면 main 함수에 문제가 있을 것 같은데요.
http://dblack.tk
커뮤니티 사이트 입니다 많은 이용 부탁 드립니다.