TCP 클라이언트를 사용하여 Python에서 여러 메시지 보내기

구스타보 올리베이라

서버에 여러 메시지를 보내야하는 TCP 클라이언트가 많이 있습니다. 서버 측에서는 다음과 같이 썼습니다.

def listenConnections():
    thread_recieve = Thread(target=recieveInstruction)

    while(1):
        lstn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        # port = int(sys.argv[1]) # server port number

        lstn.bind(('IP', PORT))


        lstn.listen(5)

        global clnt
        (clnt,ap) = lstn.accept()

       thread_recieve.start()

def recieveInstruction():
    while (1):
        try:
            message = clnt.recv(1024)
            print message
        except:
            pass

따라서 한 클라이언트가 연결할 때마다 1 개의 메시지를 보낼 수 있고 서버는이를 읽습니다. 그러나 다른 클라이언트가 연결되거나 동일한 클라이언트가 다른 메시지를 보내려고하면 작동하지 않습니다. 클라이언트 측은 꽤 견고합니다. 여러 번 생성 된 연결을 사용하여 메시지를 수신 할 수있는 방법을 알 수없는 것 같습니다. 그래서 멀티 스레드를 시도했지만 작동하지 않았습니다. Btw, 스레드에서도 listenConnections를 실행합니다. 나는한다:

def main():

    t = Thread(target=listenConnections)

    t.start()

main()
마르코스 아루 다

우선 lstn.bind (( 'IP', PORT))lstn.listen (5) 메서드는 루프 외부에서 한 번만 호출해야합니다. 루프 내에서 (clnt, ap) = lstn.accept () 만 호출해야합니다 .

게다가, 루프 외부에서 한 번만 클라이언트 메시지를 수신하는 새 스레드를 인스턴스화하므로 thread_receive.start () 한 번만 호출 할 수 있습니다 . 두 번째로 시도하면 오류가 발생할 수 있습니다. ,이 스레드는 이미 시작될 것입니다. 각 클라이언트 연결에 대한 새 스레드를 만들어야합니다. 이는 thread_receive.start () 를 호출하기 전에 매번 thread_receive = Thread (target = receiveInstruction)을 호출하는 것을 의미 합니다.

또한 클라이언트와 연결에 대한 일종의 내부 제어를 유지하여 어떤 메시지를 어떤 클라이언트로부터 받았거나 어떤 클라이언트로 보내야하는지 관리 할 수 ​​있도록하는 것이 좋습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

mORMot Framework를 사용하여 서버와 클라이언트간에 메시지 보내기

분류에서Dev

매개 변수를 사용하여 클라이언트에 websocket 메시지 보내기

분류에서Dev

PHP 메일을 사용하여 여러 이메일에 메시지 보내기

분류에서Dev

Java에서 JButton을 사용하여 클라이언트에 메시지 보내기

분류에서Dev

다른 클라이언트가 xmpp 여러 클라이언트에서 메시지를 보낸 것을 표시하는 방법 동일한 사용자

분류에서Dev

Send Intent Android를 사용하여 여러 사람에게 메시지 보내기

분류에서Dev

TCP C #을 사용하여 서버에서 특정 클라이언트로 패킷 보내기

분류에서Dev

Netcat-C 언어를 사용하여 내 마이크로 컨트롤러에 메시지 보내기

분류에서Dev

프록시가있는 신호기를 사용하여 클라이언트에서 서버로 메시지를 보내려면 어떻게해야합니까?

분류에서Dev

모든 클라이언트에 메시지를 보내는 Python TCP 서버

분류에서Dev

표준 xmpp 클라이언트를 사용하여 여러 장치에서 xmpp 메시지를 동기화하는 방법이 있습니까?

분류에서Dev

TCP 소켓 프로그램에서 클라이언트는 일부 데이터를 보내지 만 서버는 여러 번 읽어야합니다. 왜?

분류에서Dev

Rails Way : 터보 링크를 사용하여 컨트롤러에 클라이언트 데이터 보내기

분류에서Dev

netty를 사용하여 tcp 클라이언트에서 바이너리 데이터 읽기

분류에서Dev

Python을 사용하여 여러 이메일 보내기

분류에서Dev

포트를 사용하여 서버에서 클라이언트로 메시지를 보내려면 어떻게해야합니까?

분류에서Dev

Elixir의 TCP 서버에서 열린 연결 내에서 TCP 클라이언트로 메시지 보내기

분류에서Dev

Python에서 PyObjC 및 ScriptingBridge를 사용하여 메시지에 메시지 보내기

분류에서Dev

Delphi에서 Kinvey를 사용하여 클라이언트에게 푸시 알림을 보내시겠습니까?

분류에서Dev

자바 스크립트를 사용하여 클라이언트 소켓에서 보낸 이미지 그리기

분류에서Dev

nginx-ingress를 사용하여 kubernetes 클러스터 외부에서 RabbitMQ로 메시지 보내기

분류에서Dev

C # 포함 공백을 사용하여 클라이언트에서 서버로 메시지를 보내는 방법

분류에서Dev

Java의 소켓을 사용하여 서버에서 특정 클라이언트로 문자열 메시지를 보내는 방법은 무엇입니까?

분류에서Dev

TCP 연결을 사용하여 동시에 여러 클라이언트를 수락하는 방법은 무엇입니까?

분류에서Dev

게시-구독 패턴을 사용하여 SignalR로 클라이언트에 업데이트 보내기

분류에서Dev

단일 클라이언트에서 TCP 서버로 여러 데이터 스트림을 보내는 방법

분류에서Dev

스크립트를 사용하여 클라이언트 측에서 http 게시물을 보내고 NODEJS에서 요청 받기

분류에서Dev

msg를 사용하여 원격 사용자에게 메시지 보내기

분류에서Dev

여러 도메인에 대한 Amazon SES를 사용하여 사용자 지정 이메일 보내기

Related 관련 기사

  1. 1

    mORMot Framework를 사용하여 서버와 클라이언트간에 메시지 보내기

  2. 2

    매개 변수를 사용하여 클라이언트에 websocket 메시지 보내기

  3. 3

    PHP 메일을 사용하여 여러 이메일에 메시지 보내기

  4. 4

    Java에서 JButton을 사용하여 클라이언트에 메시지 보내기

  5. 5

    다른 클라이언트가 xmpp 여러 클라이언트에서 메시지를 보낸 것을 표시하는 방법 동일한 사용자

  6. 6

    Send Intent Android를 사용하여 여러 사람에게 메시지 보내기

  7. 7

    TCP C #을 사용하여 서버에서 특정 클라이언트로 패킷 보내기

  8. 8

    Netcat-C 언어를 사용하여 내 마이크로 컨트롤러에 메시지 보내기

  9. 9

    프록시가있는 신호기를 사용하여 클라이언트에서 서버로 메시지를 보내려면 어떻게해야합니까?

  10. 10

    모든 클라이언트에 메시지를 보내는 Python TCP 서버

  11. 11

    표준 xmpp 클라이언트를 사용하여 여러 장치에서 xmpp 메시지를 동기화하는 방법이 있습니까?

  12. 12

    TCP 소켓 프로그램에서 클라이언트는 일부 데이터를 보내지 만 서버는 여러 번 읽어야합니다. 왜?

  13. 13

    Rails Way : 터보 링크를 사용하여 컨트롤러에 클라이언트 데이터 보내기

  14. 14

    netty를 사용하여 tcp 클라이언트에서 바이너리 데이터 읽기

  15. 15

    Python을 사용하여 여러 이메일 보내기

  16. 16

    포트를 사용하여 서버에서 클라이언트로 메시지를 보내려면 어떻게해야합니까?

  17. 17

    Elixir의 TCP 서버에서 열린 연결 내에서 TCP 클라이언트로 메시지 보내기

  18. 18

    Python에서 PyObjC 및 ScriptingBridge를 사용하여 메시지에 메시지 보내기

  19. 19

    Delphi에서 Kinvey를 사용하여 클라이언트에게 푸시 알림을 보내시겠습니까?

  20. 20

    자바 스크립트를 사용하여 클라이언트 소켓에서 보낸 이미지 그리기

  21. 21

    nginx-ingress를 사용하여 kubernetes 클러스터 외부에서 RabbitMQ로 메시지 보내기

  22. 22

    C # 포함 공백을 사용하여 클라이언트에서 서버로 메시지를 보내는 방법

  23. 23

    Java의 소켓을 사용하여 서버에서 특정 클라이언트로 문자열 메시지를 보내는 방법은 무엇입니까?

  24. 24

    TCP 연결을 사용하여 동시에 여러 클라이언트를 수락하는 방법은 무엇입니까?

  25. 25

    게시-구독 패턴을 사용하여 SignalR로 클라이언트에 업데이트 보내기

  26. 26

    단일 클라이언트에서 TCP 서버로 여러 데이터 스트림을 보내는 방법

  27. 27

    스크립트를 사용하여 클라이언트 측에서 http 게시물을 보내고 NODEJS에서 요청 받기

  28. 28

    msg를 사용하여 원격 사용자에게 메시지 보내기

  29. 29

    여러 도메인에 대한 Amazon SES를 사용하여 사용자 지정 이메일 보내기

뜨겁다태그

보관