socket.error: [Errno 10048]及查看pid进程号和端口号

最近用python编写一个socket编程,运行时有时会出现错误:
socket.error: [Errno 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次

经过搜索发现这个提示是在端口冲突的时候出现,可能的原因是在服务器程序中创建一个Socket打开一个端口后,在程序结束的时候没有关闭这个Socket,因此下次启动程序就会出现这个错误提示,解决方法:

1、在服务器程序结束的时候要关闭Socket

2、或者更换端口号

3、重启机器

Win7系统快速查看端口号和pid进程号:
1.按下Win+R键,输入CMD,打开命令行。

2.在CMD窗口中输入netstat -aon|findstr 表示要查看的端口号。
以netstat -aon|findstr 80为例:
3.从下图可以看出有程序在占用了80端口,最右侧是占有这个程序的进程ID:2996;
socket.error: [Errno 10048]及查看pid进程号和端口号_第1张图片
4.知道了进程ID,我们只需要查出2996是哪个程序就可以了;继续输入以下命令:tasklist|findstr “2996”,2996就是之前的进程ID。
这里写图片描述
关闭对应的进程

    taskkill /F /IM httpd.exe  

查看端口状态

netstat -aon

你可能感兴趣的:(python,socket端口问题)