(2018-04-13.Python從Zero到One)三、網(wǎng)絡(luò)編程__3.3.12listen的隊(duì)列長(zhǎng)度

上一篇文章為:→3.3.11tcp長(zhǎng)連接和短連接

listen的隊(duì)列長(zhǎng)度

服務(wù)器端運(yùn)行

#coding=utf-8
from socket import *
from time import sleep

# 創(chuàng)建socket
tcpSerSocket = socket(AF_INET, SOCK_STREAM)

# 綁定本地信息
address = ('', 7788)
tcpSerSocket.bind(address)

connNum = int(raw_input("請(qǐng)輸入要最大的鏈接數(shù):"))

# 使用socket創(chuàng)建的套接字默認(rèn)的屬性是主動(dòng)的,使用listen將其變?yōu)楸粍?dòng)的,這樣就可以接收別人的鏈接了
tcpSerSocket.listen(connNum)

while True:

    # 如果有新的客戶端來(lái)鏈接服務(wù)器,那么就產(chǎn)生一個(gè)新的套接字專門為這個(gè)客戶端服務(wù)器
    newSocket, clientAddr = tcpSerSocket.accept()
    print clientAddr
    sleep(1)

客戶端運(yùn)行

#coding=utf-8
from socket import *

connNum = raw_input("請(qǐng)輸入要鏈接服務(wù)器的次數(shù):")
for i in range(int(connNum)):
    s = socket(AF_INET, SOCK_STREAM)
    s.connect(("192.168.1.102", 7788))
    print(i)

總結(jié)

  • listen中的black表示已經(jīng)建立鏈接和半鏈接的總數(shù)
  • 如果當(dāng)前已建立鏈接數(shù)和半鏈接數(shù)以達(dá)到設(shè)定值,那么新客戶端就不會(huì)connect成功,而是等待服務(wù)器

下一篇文章為:→3.3.13手動(dòng)配置ip
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容