查閱一些資料,我自己試著寫了乙個簡單的聊天系統。
(一)建立套接字進行監聽
//建立套接字 socket()
server = new qtcpserver(this);
//監聽,埠號:9999 bind(...), listen()
bool isok = server->listen(qhostaddress::any,9999);
//監聽失敗
if(false == isok)
connect(server,signal(newconnection()),this,slot(newclient()));
(二)連線客戶端void server::newclient()
(三)讀取資訊並**void server::tcpread()
(四)退出客戶端void server::disclient()
(一)連線伺服器client::client(qwidget *parent) :
qwidget(parent),
ui(new ui::client)
connect(tcp,signal(readyread()),this,slot(tcpread()));
connect(ui->sendpushbutton,signal(clicked(bool)),this,slot(tcpsend()));
}
(二)讀取資訊void client::tcpread()
(三)傳送資訊void client::tcpsend()
該聊天系統能實現群聊功能,即乙個客戶端向伺服器傳送資訊,伺服器接受資訊之後將接受的資訊發給所有與伺服器相連的客戶端。 實現簡易的基於TCP IP 協議的聊天室
專案描述 運用 socket 程式設計,實現了服務端對客戶端的廣播和 客戶端資訊實現客戶端聊天操作,並使用 i o 復用技術中的 epoll 模式解決了乙個執行緒可以處理大量使用者連線伺服器的請求,提高了伺服器併發連線的數量。同時利用執行緒池來管理各個執行緒的工作,避免了建立和銷毀執行緒的開銷,因此...
QT學習之行 簡易登入介面
新建 qt widgets 應用,專案名稱為 login 類名和基類可選擇qialog,也可以保持 mainwindow 和qmainwindow 不變 完成專案建立後,向專案中新增新的 qt 設計師介面類,模板選擇 dialog without buttons,類名更改為 logindialog ...
FPGA學習 基於FPGA的簡易音訊採集系統
本篇部落格記錄乙個小專案的開發 基於fpga的簡易音訊採集系統,專案 是乙個寒假的活動的題目,直接購買了設計好的板卡,專案的基本要求如下 使用的板卡是lattice的ice40up5k,這裡首先記錄一下在lattice的軟體中開發fpga的簡單流程 參考 windows 下 ice40 fpga 開...