Discuss / Python / 多线程UDP

多线程UDP

Topic source

一度剑心

#1 Created at ... [Delete] [Delete and Lock User]
import socketimport threadingdef tcplink(data, addr):    print('current thread:%s' % threading.currentThread().name)    print('received from %s:%s' % addr)    s.sendto(b'hello,%s' % data, addr)  # 两个参数s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  # SOCK_DGRAM指定socket类型为UDPs.bind(('127.0.0.1', 9999))print('bind udp on 9999...')print(threading.currentThread().name)print(type(threading.currentThread().name))while True:    data, addr = s.recvfrom(1024)    t = threading.Thread(target=tcplink, args=(data, addr))    t.start()

一度剑心

#2 Created at ... [Delete] [Delete and Lock User]

额,上面乱码了

import socket
import threading

def tcplink(data, addr):
print('current thread:%s' % threading.currentThread().name)
print('received from %s:%s' % addr)
s.sendto(b'hello,%s' % data, addr) # 两个参数

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # SOCK_DGRAM指定socket类型为UDP
s.bind(('127.0.0.1', 9999))
print('bind udp on 9999...')
print(threading.currentThread().name)
print(type(threading.currentThread().name))
while True:
data, addr = s.recvfrom(1024)
t = threading.Thread(target=tcplink, args=(data, addr))
t.start()

一度剑心

#3 Created at ... [Delete] [Delete and Lock User]

这下就好了

import socket

import threading

def tcplink(data, addr):

    print('current thread:%s' % threading.currentThread().name)

    print('received from %s:%s' % addr)

    s.sendto(b'hello,%s' % data, addr)  # 两个参数

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  # SOCK_DGRAM指定socket类型为UDP

s.bind(('127.0.0.1', 9999))

print('bind udp on 9999...')

print(threading.currentThread().name)

print(type(threading.currentThread().name))

while True:

    data, addr = s.recvfrom(1024)

    t = threading.Thread(target=tcplink, args=(data, addr))

    t.start()


  • 1

Reply