This commit is contained in:
laodaming 2023-08-22 18:31:25 +08:00
parent 0fab87065b
commit 7682843f3e

View File

@ -205,7 +205,7 @@ func (l *DataTransferLogic) unAuthResponse(conn *websocket.Conn) {
conn.Close() conn.Close()
} }
// 心跳 // 心跳检测
func (w *wsConnectItem) heartbeat() { func (w *wsConnectItem) heartbeat() {
tick := time.Tick(time.Second * 5) tick := time.Tick(time.Second * 5)
for { for {
@ -223,7 +223,7 @@ func (w *wsConnectItem) heartbeat() {
} }
} }
// 关闭连接 // 关闭websocket连接
func (w *wsConnectItem) close() { func (w *wsConnectItem) close() {
w.mutex.Lock() w.mutex.Lock()
defer w.mutex.Unlock() defer w.mutex.Unlock()
@ -239,7 +239,7 @@ func (w *wsConnectItem) close() {
logx.Info("websocket:", w.uniqueId, " is closed") logx.Info("websocket:", w.uniqueId, " is closed")
} }
// 读取输出返回给客户 // 读取出口缓冲池数据输出返回给浏览器
func (w *wsConnectItem) writeLoop() { func (w *wsConnectItem) writeLoop() {
for { for {
select { select {
@ -255,7 +255,7 @@ func (w *wsConnectItem) writeLoop() {
} }
} }
// 接受客户端发来的消息 // 接受客户端发来的消息并写入入口缓冲池
func (w *wsConnectItem) readLoop() { func (w *wsConnectItem) readLoop() {
for { for {
select { select {
@ -278,7 +278,7 @@ func (w *wsConnectItem) readLoop() {
} }
} }
// 把收到的消息发往不同的地方处理 // 消费websocket入口数据池中的数据
func (w *wsConnectItem) sendLoop() { func (w *wsConnectItem) sendLoop() {
for { for {
select { select {
@ -290,7 +290,7 @@ func (w *wsConnectItem) sendLoop() {
} }
} }
// 把要传递给客户端的数据放入outchan // 把要传递给客户端的数据放入出口缓冲池
func (w *wsConnectItem) sendToOutChan(data []byte) { func (w *wsConnectItem) sendToOutChan(data []byte) {
select { select {
case <-w.closeChan: case <-w.closeChan:
@ -302,7 +302,7 @@ func (w *wsConnectItem) sendToOutChan(data []byte) {
} }
} }
// 格式化返回数据 // 格式化为websocket标准返回格式
func (w *wsConnectItem) respondDataFormat(msgType string, data interface{}) []byte { func (w *wsConnectItem) respondDataFormat(msgType string, data interface{}) []byte {
d := websocket_data.DataTransferData{ d := websocket_data.DataTransferData{
T: msgType, T: msgType,
@ -312,7 +312,7 @@ func (w *wsConnectItem) respondDataFormat(msgType string, data interface{}) []by
return b return b
} }
// 处理接受到的数据 // 处理入口缓冲池中不同类型的数据(分发处理)
func (w *wsConnectItem) dealwithReciveData(data []byte) { func (w *wsConnectItem) dealwithReciveData(data []byte) {
var parseInfo websocket_data.DataTransferData var parseInfo websocket_data.DataTransferData
if err := json.Unmarshal(data, &parseInfo); err != nil { if err := json.Unmarshal(data, &parseInfo); err != nil {