에혀..
이번엔 쓰레드를 사용해보자..
그냥 쓰려구 만든 기본형이다.
라고 되어 있는 부분에 작업을 추가 하려구 만들었다.
완전 기본이라 암것도 없지만 이것을 기본으로 서버 하나 만들어본다...ㅠㅠ
이번엔 쓰레드를 사용해보자..
01.#include "server.h"02.#include "comm.h"03. 04.pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; // 쓰레드 초기화05. 06.void openServ(){07. //TODO 내용 추가08. 09.}10. 11.void closeServ(){12. //TODO 내용 추가13. 14.}15. 16.void *rcvProcess() {17. while (1) {18. pthread_mutex_lock(&mutex); // 잠금19. //TODO 내용 추가20. 21. 22. sleep(1);23. pthread_mutex_unlock(&mutex); // 해제24. }25.}26. 27.void *sndProcess() {28. while (1) {29. pthread_mutex_lock(&mutex); // 잠금30. //TODO 내용 추가31. 32. 33. sleep(1);34. pthread_mutex_unlock(&mutex); // 해제35. }36.}37. 38.int main(int argc, char **argv) {39. 40. int thr_id;41. int status;42. int a = 1;43. int b = 2;44. pthread_t p_thread[2];45. 46. openServ();47. 48. thr_id = pthread_create(&p_thread[0], NULL, rcvProcess, (void *) &a);49. if (thr_id < 0) {50. perror("thread create error : ");51. exit(0);52. }53. 54. sleep(1);55. thr_id = pthread_create(&p_thread[1], NULL, sndProcess, (void *) &b);56. if (thr_id < 0) {57. perror("thread create error : ");58. exit(0);59. }60. 61. // 쓰레드 종료를 기다린다.62. pthread_join(p_thread[0], (void **) &status);63. pthread_join(p_thread[1], (void **) &status);64. 65. status = pthread_mutex_destroy(&mutex);66. 67. printf("status code = %d", status);68. printf("********************* Server is end *********************");69. 70. closeServ();71. 72. return 0;73.}그냥 쓰려구 만든 기본형이다.
//TODO 내용 추가 라고 되어 있는 부분에 작업을 추가 하려구 만들었다.
완전 기본이라 암것도 없지만 이것을 기본으로 서버 하나 만들어본다...ㅠㅠ
