프로그래밍 2

안드로이드 프로그래밍 / 멀티쓰레드 #1

지난 프로그래밍에서 안드로이드 디바이스가 소켓을 생성하는 과정에서 문제가 발생했다. 지난 글 참고 2021/01/29 - [프로그래밍/Android Java] - 안드로이드 소켓 프로그래밍 / 클라이언트 프로그래밍 #1 안드로이드 소켓 프로그래밍 / 클라이언트 프로그래밍 #1 지난 시간에 파이썬으로 서버를 프로그래밍 했다 2021/01/28 - [프로그래밍/Python] - 파이썬 소켓 프로그래밍 / 서버 프로그래밍 #1 파이썬 소켓 프로그래밍 / 1. 서버 프로그래밍 #1 첫 번째 프로젝트 bagineer.tistory.com 메인 쓰레드에서 소켓 생성을 시도해서 에러가 발생했기 때문에 이번에는 쓰레드에 대해서 다뤄보기로 한다. 간단히 말하자면 쓰레드는 프로그램이 실행되는 논리적인 단위 중 하나이다. ..

파이썬 소켓 프로그래밍 / 서버 프로그래밍 #1

첫 번째 프로젝트에서 안드로이드 디바이스 간 데이터 통신을 할 수 있는 앱을 구현하려고 한다. 자세한 기능은 나중에 기술하도록 하고 먼저 데이터 통신을 위한 서버를 구현하려고 한다. 학교에서 컴퓨터 네트워크 시간에 배운게 전부라 자세하게는 잘 모르겠다. 그마저도 계절 학기로 짧게 배워서 기억이 잘 안난당.. 그래도 최대한 자세히 설명해보기로.. 소스 코드는 맨 아래에 있어유 소켓 통신의 flowchart는 위의 그림과 같다. 서버가 있어야 클라이언트가 접속을 할 수 있으니 서버 측면에서 먼저 살펴보도록 하자. 서버에서 소켓을 생성하고, 소켓에 ip와 port를 주소로 하여 bind한다. 여기서 bind란 결합 혹은 할당 정도로 생각하면 좋을 것 같다. 그리고 서버에서는 클라이언트의 연결을 대기한다. 여기..