加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
user.go 523 Bytes
一键复制 编辑 原始数据 按行查看 历史
1139556759@qq.com 提交于 2021-08-31 19:30 . init
package main
import "net"
type User struct {
Name string
Addr string
C chan string
conn net.Conn
}
func NewUser(conn net.Conn) *User {
userAddr := conn.RemoteAddr().String()
user := &User{
Name: userAddr,
Addr: userAddr,
C: make(chan string),
conn: conn,
}
go user.ListenMessage()
return user
}
// 监听当前的channel中是否有数据,死循环,有数据就直接输出到客户端
func (u *User) ListenMessage() {
for {
msg := <-u.C
_, _ = u.conn.Write([]byte(msg + "\n"))
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化