From 0d33799d0dcf2f2232f83f0bf92694ba54888b65 Mon Sep 17 00:00:00 2001 From: SummerGift Date: Thu, 10 Aug 2017 11:03:06 +0800 Subject: [PATCH] add some python example for tcp server and client. --- examples/network/tcp_client.py | 16 ++++++++++++++++ examples/network/tcp_server.py | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 examples/network/tcp_client.py create mode 100644 examples/network/tcp_server.py diff --git a/examples/network/tcp_client.py b/examples/network/tcp_client.py new file mode 100644 index 0000000000..d8ae125fdb --- /dev/null +++ b/examples/network/tcp_client.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- + +import socket + +s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) + +s.connect(('192.168.10.110',6001)) + +print s.recv(1024) + +for data in ['rtt_nano','rtt_thread','rtt_bsp']: + s.send(data) + print s.recv(1024) + +s.send('exit') +s.close() \ No newline at end of file diff --git a/examples/network/tcp_server.py b/examples/network/tcp_server.py new file mode 100644 index 0000000000..537e35e043 --- /dev/null +++ b/examples/network/tcp_server.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +#引入模块 +import socket +import threading +import time +s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + +# 监听端口: +s.bind(('192.168.10.110', 6001)) + +s.listen(5) +print 'Waiting for connection...' + +def tcp_link(sock,addr): + print 'Accept new connection from %s:%s...' % addr + sock.send('Welcome to RT-Thread!') + while True: + data=sock.recv(1024) + time.sleep(1) + if data=='exit' or not data: + break + print data + sock.send('Hello,%s!'%data) + sock.close() + print 'Connection from %s:%s closed.'%addr + +while True: + + #接受一个新连接 + sock,addr=s.accept() + + #创建新线程来处理TCP连接 + t=threading.Thread(target=tcp_link(sock,addr)) +