python - 套接字创建速度差异巨大 Python3.7/Python2.7
问题描述
我正在尝试创建一个套接字,然后连接到同一台服务器,直到我无法从我的 PC 建立任何连接并且我遇到了一个问题:我的程序使用 Python 2.7 比使用 Python 3.7 快得多。
这是一个最小的例子:
# client.py
import time
import socket
begin = time.time()
socket_list = []
while True:
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(1)
s.connect(("127.0.0.1", 65432))
socket_list.append(s)
except:
print(len(socket_list))
print(time.time() - begin)
for sock in socket_list:
sock.close()
break
# server.py
import socket
HOST = "127.0.0.1"
PORT = 65432
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen()
while True:
s.accept()
使用 Python 3.7 客户端和 Python 3.7 服务器端的输出:
16298
32.764869928359985
使用 Python 2.7 客户端和 Python 3.7 服务器端的输出:
16297
1.86599993706
操作系统: Windows 10
服务器:
Gitlab 服务器在我的本地网络中运行,在另一台计算机上。
上面提到的服务器。
注意:请不要在本地以外的地方进行测试。
编辑:添加了服务器部分,只是为了确保这不是问题
解决方案
推荐阅读
- glsl - 通过 GL_KHR_vulkan_glsl 优化使用 push_constant 空间
- css - 使用选择性调色板更改图像一部分的颜色
- textures - aframe 纹理始终为黑色
- c++ - RadioHead RH_NRF24.h 库无法在 250 kbps 上运行
- java - AmazonHttpClient 向 URL 端点添加斜杠
- scala - 在 scala sbt 项目中组装主文件的传递闭包
- android - 似乎无法在 Android Studio 中保存我的 parceable 对象
- codeigniter - 如何允许 url
- java - Spring JPA - 结果不是表的存储过程
- ios - 清除颜色不适用于 UISegmentedControl