学习笔记(07):Python网络编程并发编程-客户端与服务端代码bug修复
生活随笔
收集整理的這篇文章主要介紹了
学习笔记(07):Python网络编程并发编程-客户端与服务端代码bug修复
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
立即學習:https://edu.csdn.net/course/play/24458/296236?utm_source=blogtoedu
1.修復端口被占用的bug
import socketphone = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#修復重復多次運行程序斷就被占用的bug,在綁定端口前設置 phone.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)phone.bind(('127.0.0.1',8080))......?
2.修復客戶端發送空字符串,服務器一直處于等待狀態的bug,判斷是否為空,是則跳過本次循環進入下次循環,不為空則執行
......msg = input("請輸入:")#修復客戶端發送空字符串而服務器卡在接收信息處的bug,continue表示跳出本次循環,重新開始下一次的循環if not msg:continuephone.send(msg.encode('utf-8'))res = phone.recv(1024)......3.修復客戶端單方面關閉時,服務器會報錯的bug,這里指的是windows會報錯,Linux系統服務器會無限循環
......while True:#解決客戶端單方面關閉而服務器還在等待時會報ConnectionResetError錯誤的bug #利用try....except....try:data = conn.recv(1024)#1024表示接收的字節最大量是1024bytesprint('這是客戶端的請求數據',data)#2)處理接收的請求后,發送數據send()#將客戶端發送來的小寫字母經過大寫處理后發送返回給客戶端conn.send(data.upper())except ConnectionResetError:break.......Linux系統直接用if not data:break語句即可解決
總結
以上是生活随笔為你收集整理的学习笔记(07):Python网络编程并发编程-客户端与服务端代码bug修复的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LT8619B 产品功能概述 HDMI1
- 下一篇: 学习笔记(08):Python网络编程并