윈도우와 리눅스간의 소켓 통신입니다.
윈도우(데스크탑)
리눅스(라즈베리파이)
스레드를 이용하여 서로 데이터를 주고 받습니다.
현재 두가지의 의문이 있습니다.
1. 통신문제
- 윈도우(client), 리눅스(server) 통신 일 때는 문제 없음
- 리눅스, 리눅스 통신일 때는 문제 없음
그런데
- 윈도우(server), 리눅스(client) 통신일 때는 연결이 되지 않습니다.
윈도우에서 서버를 일단 실행시키고
리눅스에서 클라이언트를 실행하면
서로 Connect가 되질 않고
리눅스에서 그대로 멈추게 됩니다.
에러조차 나지 않네요 ㅠㅠㅠㅠㅠㅠ
왜 이런 상황에서만 통신이 되질 않는 걸까요
두번째 의문 사항입니다.
2. 위 프로그램에서는 3개의 스레드가 사용됩니다.
A, B, C의 쓰레드가 있다고 하면
A와 B는 하나의 변수를 공유합니다.
temp라고 하죠.
A의 역할은 temp의 값을 변경시키는 것이고
B의 역할은 temp의 값에 따라 주어진 명령을 실행합니다.
그런데 A가 값을 변경해주고
B에서 실행하는 순간 세그먼트 오류가 뜨며 종료됩니다.
-_-;;
간섭이 일어날 시 따로 처리 해줘야하는 부분이 있는지가 궁금합니다.
사실 간섭문제보단
통신이 너무 궁금합니다.
왜 저 상황에서만 통신이 안되는지
어떻게 해야 통신이 되는지..
ㅠㅠㅠㅠㅠ 질문드립니다