diff options
| author | SummerGift <[email protected]> | 2017-08-10 11:03:06 +0800 |
|---|---|---|
| committer | SummerGift <[email protected]> | 2017-08-10 11:04:17 +0800 |
| commit | 0d33799d0dcf2f2232f83f0bf92694ba54888b65 (patch) | |
| tree | f3da5331227e0839d1aa8a1f5cfc01392f3fff49 /examples | |
| parent | 07cc5047bb4b92f3a0a95df1e1f95f2cac7b9cd9 (diff) | |
add some python example for tcp server and client.
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/network/tcp_client.py | 16 | ||||
| -rw-r--r-- | examples/network/tcp_server.py | 34 |
2 files changed, 50 insertions, 0 deletions
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)) + |
