summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorSummerGift <[email protected]>2017-08-10 11:03:06 +0800
committerSummerGift <[email protected]>2017-08-10 11:04:17 +0800
commit0d33799d0dcf2f2232f83f0bf92694ba54888b65 (patch)
treef3da5331227e0839d1aa8a1f5cfc01392f3fff49 /examples
parent07cc5047bb4b92f3a0a95df1e1f95f2cac7b9cd9 (diff)
add some python example for tcp server and client.
Diffstat (limited to 'examples')
-rw-r--r--examples/network/tcp_client.py16
-rw-r--r--examples/network/tcp_server.py34
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))
+