一般在udp通訊中,不存在嚴格意義上的伺服器端、客戶端,因為不需要建立連線,可以理解為接收端和傳送端。傳送端向指定埠傳送資料,接收端從指定埠讀取資料,反之亦然。
為了實現傳送端與接收端的雙向通訊,在每一端需要定義兩個埠:傳送資料埠、接收資料埠,具體組成如下所示:
上圖可以看出,傳送端將資料傳送到指定的傳送埠,接收端從制定的接收埠接收資料,這兩個埠必須保持一致。反之亦然。
首先在.pro檔案中加入 qt +=network;
1.建立套接字socket
receiver =
newqudpsocket
(this
);
2.繫結埠
receiver-
>
bind
(receive_port,qudpsocket::shareaddress)
;
3.資料到來時會發出readyread訊號,編寫槽函式接受資料
connect
(receiver,
signal
(readyread()
),this
,slot
(processpendingdatagram()
));void
processpendingdatagram()
4.關閉套接字
receiver-
>
close()
;
1.建立套接字socket
sender=
newqudpsocket
(this
);
2.傳送資料
qbytearray datagram;
sender-
>
writedatagram
(datagram.
data()
, datagram.
size()
,qhostaddress
(udp_send_ip)
, udp_send_port)
;
3.關閉套接字
receiver-
>
close()
;
Redis客戶端和伺服器
一 redis客戶端 redisserver結構中儲存了所有客戶端的狀態資訊。struct redisserver 命令client list可以列出目前所有連線到伺服器的客戶端。命令client setname name 可以給客戶端設定乙個名字。偽客戶端 由於伺服器必須接收來自客戶端的命令以執行...
Redis 客戶端和伺服器
客戶端的資料結構 typedef struct redisclient redisclient 名字 name 標誌值 flags 指向客戶端正在使用的資料庫的指標,以及該資料庫的號碼 當前要執行的命令 命令的引數 命令的個數,以及指向命令實現函式的指標 輸入緩衝區 querybuf 輸出緩衝區 複...
C 客戶端和伺服器端
1 c s 客戶端應用程式 winform wpf 平級 資料是存放在其他的電腦上或伺服器上 資料的加工是在使用者的電腦上執行的,會對使用者的電腦配置有所要求 2 b s 網頁端應用程式 asp.net 統稱 asp.net webform asp.net mvc 平級 使用者傳送乙個請求到iis伺...