파이썬으로 간단히 문자를 주고받는 소켓 프로그램을 만들고 있습니다. 소켓은 하나를 열고 두개의 쓰레드를 돌려서 하나는 상대방의 데이터를 받고 나머지는 제가 쓴것을 보내주는 방식인데요, 받을때는 잘 받는데 보낼때 상대방이 보이지가 않는다고 하네요 아무래도 하나의 소켓으로 읽고 쓰는것을 쓰레드로 구현해서 그런것 같은데 혹시 이때 lock을 걸어주어야 하나요?
TCP 소켓에서 송신과 수신은 분리되어있으므로 쓰레드 한개는 읽기만, 다른 하나는 쓰기만 한다면 문제는 없습니다.
아마도 python 프로그램에 문제가 있는 것이겠죠. python 으로 쓰레드 2개를 생성해서 해보니 잘되는군요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
TCP 소켓에서 송신과
TCP 소켓에서 송신과 수신은 분리되어있으므로 쓰레드 한개는 읽기만,
다른 하나는 쓰기만 한다면 문제는 없습니다.
아마도 python 프로그램에 문제가 있는 것이겠죠.
python 으로 쓰레드 2개를 생성해서 해보니 잘되는군요.
댓글 달기