asyncore基本應用

2021-10-03 07:04:31 字數 3310 閱讀 5379

:# 初始化父類

asyncore.dispatcher.__init__(self)

# 建立乙個socket物件

self.create_socket(

)# 連線伺服器端

self.connect(

(host,80)

)#傳送優化

('伺服器連線成功'

)def

handle_close

(self)

:print

('伺服器連線斷開'

) self.close(

)def

readable

(self)

:return

true

defhandle_read

(self)

:# 指定一次讀取1024個位元組,如果一次沒有讀完的話,那麼事件迴圈會分多次把內容讀完為止

'''回聲伺服器:直接將客戶端傳送的訊息原樣返回給客戶端

1.伺服器端需要能夠接收客戶端的連線請求

2.伺服器端需要能夠讀取到客戶端傳送的內容

3.伺服器端需要能夠傳送內容到客戶端

'''class

echoserver

(asyncore.dispatcher)

:def

__init__

(self,host,port)

: asyncore.dispatcher.__init__(self)

self.create_socket(

) self.set_reuse_addr(

)#把伺服器監聽位址設定為可重用

self.bind(

(host,port)

) self.listen(5)

defhandle_accepted

(self, sock, addr)

:print

('接收到了來自於{}的連線'

.format

(addr)

)def

handle_read

(self)

: data = self.recv(

1024

)print

('接收到資料:{}'

.format

(data.decode())

)if data:

self.send(data)

#判斷客戶端傳送的內容不為空則原樣發回給客戶端

if __name__ ==

'__main__'

: echoserver(

'localhost'

,6666

) asyncore.loop(

)

import socket

import threading

client = socket.socket(socket.af_inet,socket.sock_stream)

client.connect(

('127.0.0.1'

,6666))

defreceive

(client)

:while

true

: data = client.recv(

1024

)if data:

print

(data.decode())

defsend

(client)

:while

true

: to_data =

input

("請輸入要傳送的內容:"

) client.send(to_data.encode())

threading.thread(target=receive,args=

(client,))

.start(

)threading.thread(target=send,args=

(client,))

.start(

)

def

handle_accepted

(self, sock, addr)

:print

('接收到了來自於{}的連線'

.format

(addr)

) echohandler(sock)

class

echohandler

(asyncore.dispatcher)

:def

handle_read

(self)

: data = self.recv(

1024

)print

('接收到資料:{}'

.format

(data.decode())

)if data:

self.send(data)

# 判斷客戶端傳送的內容不為空則原樣發回給客戶端

SIP基本應用

sip基本應用 sip 協議作為 voip 通訊的主要協議之一,以起簡單,靈活,開放性而逐漸在 voip 通訊領域內佔據主導地位。使用 sip通訊的主要方式如下圖,主要裝置有 sip終端,定向伺服器,位置伺服器,pstn 閘道器等裝置。sip協議發展的目前,最新標準為 rfc3261 主要的網路裝置...

CGI 基本應用

gdi graphics device inte ce plus也就是圖形裝置介面,提供了各種豐富的圖形影象處理功能 在c net中,使用gdi 處理二維 2d 的圖形和影象,使用directx處理三維 3d 的圖形影象,圖形影象處理用到的主要命名空間 是system drawing 提供了對gdi...

Sql cursor 基本應用

1 游標格式 declare 游標名稱 cursor for select 欄位1,欄位2,欄位3,from 表名 where open 游標名稱 fetch next from 游標名稱 into 變數名1,變數名2,變數名3,while fetch status 0 begin sql語句執行過...