简单socket编程2
编程 简单 socket
2023-06-13 09:16:16 时间
上一节我们提到了socket编程的基本形式,这一节我们加强服务端的性能!
#!/usr/bin/env python
import socket, threading
class ClientThread(threading.Thread):
def __init__(self, ip, port, socket):
threading.Thread.__init__(self)
self.ip = ip
self.port = port
self.socket = socket
print "[+] New thread started for "+ip+":"+str(port)
def run(self):
print "Connection from : "+ip+":"+str(port)
self.socket.send("\nWelcome to the server\n\n")
data = "dummydata"
while len(data):
data = self.socket.recv(2048)
print "Client sent : "+data
self.socket.send("You sent me : "+data)
print "Client disconnected..."
host = "0.0.0.0"
port = 9999
tcpsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcpsock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
tcpsock.bind((host,port))
threads = []
while True:
tcpsock.listen(4)
print "\nListening for incoming connections..."
(clientsock, (ip, port)) = tcpsock.accept()
newthread = ClientThread(ip, port, clientsock)
newthread.start()
threads.append(newthread)
for t in threads:
t.join()
相关文章
- java用什么软件_Java编程什么软件最好用?
- 【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛「建议收藏」
- C语言编程基础入门经典100题(1-10)-简书_c语言简单代码
- java socket详解_Java Socket 编程原理及教程「建议收藏」
- 如何编程简单的病毒_永恒之蓝病毒如何传播
- Shell脚本编程_shell简单脚本
- 瞅一眼就会使用GO的并发编程分享
- MySQL数据库编程课本:学习实现自己的数据库(mysql课本)
- 编程Linux Socket编程:从入门到精通(linux的socket)
- Redis让编程更简单:极致性能设计(redis设计程序)
- Linux下使用Ruby开发编程:简单易学(linuxruby)
- MySQL网络连接之Socket编程(mysql的socket)
- 让Linux编程更简单:GCC的编译优势(linux编程gcc)
- Linux网络编程:深入源码解析(linux网络编程源码)
- MySQL高效编程:简单而有效实现快速结果(mysql高效编程)
- Linux RPC编程:简单快捷的远程服务调用(linuxrpc编程)
- Linux下的程序编辑器:让编程更简单(linux 程序编辑器)
- Redis键值命名让你的编程更简单(redis键值命名规则)
- 灵活的Redis脚本语言让编程更简单(redis 脚本语言)
- C#中的cookie编程简单实例与说明