package gocmdDaemon import ( "encoding/json" "net" ) // Write 将给定的值序列化为JSON并写入网络连接 // 参数: // // conn: 网络连接对象 // v: 要写入的值 // // 返回: // // error: 写入过程中发生的错误(如果有) func Write[T any](conn net.Conn, v T) error { return json.NewEncoder(conn).Encode(v) } // Read 从网络连接读取JSON数据并反序列化为指定类型 // 参数: // // conn: 网络连接对象 // // 返回: // // *T: 反序列化后的值指针 // error: 读取或反序列化过程中发生的错误(如果有) func Read[T any](conn net.Conn) (*T, error) { // 再读报文内容 var zero T err := json.NewDecoder(conn).Decode(&zero) if err != nil { return nil, err } return &zero, nil }