python进程结束后端口被占用怎么解决
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容主要讲解"python进程结束后端口被占用怎么解决",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python进程结束后端口被占用怎么解决"吧!so
千家信息网最后更新 2026年11月01日python进程结束后端口被占用怎么解决
本篇内容主要讲解"python进程结束后端口被占用怎么解决",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python进程结束后端口被占用怎么解决"吧!
socket分配
一个服务端进程向操作系统申请一个 scoket 来监听,但是当进程退出后,还未关闭的连接不会立即消失,而是会留给操作系统处理。操作系统会尝试关闭这个连接。但是如果关闭时出现问题,这个连接就会一直处于 TIME_WAIT 或其他非正常状态,而这是相应的端口还处于占用状态,如果这个时候再重新启动这个服务端程序,就会出现地址被占用的情况
例子
测试代码:
import sockets = socket.socket()s.bind(('0.0.0.0', 12345))s.listen()(client, addr) = s.accept()print(client)print(addr)使用 nc 进行连接:
nc 127.0.0.1 12345
服务端会打印 client 和 addr ,然后正常退出,但是此时使用 netstat -anop | grep 12345 查看,发现对应连接并没有被立即释放
tcp 0 0 127.0.0.1:12345 127.0.0.1:59408 TIME_WAIT - timewait (28.18/0/0)
此时再次启动服务端,发现报错了:
Traceback (most recent call last): File "server.py", line 5, ins.bind(('0.0.0.0', 12345))OSError: [Errno 98] Address already in use
解决方案
使用 setsockopt :
import sockets = socket.socket()s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)s.bind(('0.0.0.0', 12345))s.listen()(client, addr) = s.accept()print(client)print(addr)此时就不会出现地址被占用的提示了
在 c 中也有一样的方法,只是方法声明不同, c 版的用法为
struct sockaddr_in addr;addr.sin_family = AF_INET;addr.sin_port = htons(12345);addr.sin_addr.s_addr = htonl(INADDR_ANY);int s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);int reuse = 1;setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &reuse, sizeof(reuse));bind(s, (struct sockaddr *) &addr, sizeof(addr))listen(s, )struct sockaddr_in in_addr;int len = sizeof(in_addr);int client = accept(socket, (struct sockaddr *) in_addr, &len);//handle client//...
其他
发现除了
SO_REUSEADDR之外还有一个SO_REUSEPORT的选项,查询后得知是BSD独有的,Linux并不能用如果是客户端绑定端口用这个属性可能会出现刚连接上服务器就莫名其妙收到一个
FIN的问题,导致其立即关闭,因此客户端使用此选项时需注意
到此,相信大家对"python进程结束后端口被占用怎么解决"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
端口
进程
服务
操作系统
方法
系统
内容
地址
客户
客户端
状态
问题
学习
查询
不同
实用
更深
莫名其妙
代码
例子
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
博彦科技互联网金融
华服互联网科技怎么样
智能科技公司是互联网公司吗
互联网与科技金融数据
中资互联网科技
与互联网科技公司
狮子座互联网科技
亿策互联网科技
互联网金融科技委员会
隆华科技工业互联网
中盈科技互联网信息有限公司
天速互联网络科技有限公司
广州优美互联网科技
湖南一路畅行互联网科技
佛山市拉法互联网科技有限公司
阿里互联网科技企业
互联网数据科技专业
抖集互联网科技技术咨询
上海万顺科技互联网有限公司招聘
唐山双旺合互联网科技产业园
上海卓越科技互联网
互联网科技资迅
奇酷互联网科技
上海万想互联网科技
互联网科技创新企业排名
广州优美互联网科技
互联网科技实习生岗位职责
河南住房之家互联网科技
长沙易易互联网科技有限公司
上海旺乐尼互联网科技有限公司