当前位置: 首页 > news >正文

网站默认极速模式wordpress如何导航网站

网站默认极速模式,wordpress如何导航网站,网络推广活动具体实施方案,个人备案网站做淘宝客可以往期回顾#xff1a; Go语言开发小技巧易错点100例#xff08;一#xff09;Go语言开发小技巧易错点100例#xff08;二#xff09;Go语言开发小技巧易错点100例#xff08;三#xff09;Go语言开发小技巧易错点100例#xff08;四#xff09;Go…往期回顾 Go语言开发小技巧易错点100例一Go语言开发小技巧易错点100例二Go语言开发小技巧易错点100例三Go语言开发小技巧易错点100例四Go语言开发小技巧易错点100例五Go语言开发小技巧易错点100例六Go语言开发小技巧易错点100例七 本期看点技巧类用【技】表示易错点用【易】表示 JSON Marshal和Proto Marshal在Protobuf Message结构体上使用的不同【易】channel方式代替time.Sleep()方法【技】 正文开始 JSON Marshal和Proto Marshal在gRPC Message上使用的不同 我们先定义一个Proto Buffer文件内容为一个Message有两个属性其中一个属性为string类型一个为onef类型 syntax proto3;option go_package /test;package cmd;message UserInfo {string name 1;oneof address {string school_addr 2;string home_addr 3;} }接下来我们编译成pb.go文件 protoc -I. --go_out.. ./hello.proto具体编译后的结构体 type UserInfo struct {state protoimpl.MessageStatesizeCache protoimpl.SizeCacheunknownFields protoimpl.UnknownFieldsName string protobuf:bytes,1,opt,namename,proto3 json:name,omitempty// Types that are assignable to Address:// *UserInfo_SchoolAddr// *UserInfo_HomeAddrAddress isUserInfo_Address protobuf_oneof:address }// ...type UserInfo_SchoolAddr struct {SchoolAddr string protobuf:bytes,2,opt,nameschool_addr,jsonschoolAddr,proto3,oneof }// ...type UserInfo_HomeAddr struct {HomeAddr string protobuf:bytes,3,opt,namehome_addr,jsonhomeAddr,proto3,oneof }然后我们写两个测试方法 方法一JSON Marshl的方式序列化结构体 func TestJSONMarshal(t *testing.T) {u : UserInfo{Name: zs,Address: UserInfo_HomeAddr{HomeAddr: Beijing},}marshal, _ : json.Marshal(u)fmt.Println(string(marshal))var u2 UserInfo_ json.Unmarshal(marshal, u2)fmt.Println(u2) }结果 方法二Proto Marshal的方式序列化结构体 func TestProtoMarshal(t *testing.T) {u : UserInfo{Name: zs,Address: UserInfo_HomeAddr{HomeAddr: Beijing},}marshal, _ : proto.Marshal(u)fmt.Println(string(marshal))var u2 UserInfo_ proto.Unmarshal(marshal, u2)fmt.Println(u2) }结果 对比上述的结果我们会发现有些不同 序列化后的内容不同JSON Marshal序列化后的内容可读性较高但是内容占用空间多反序列化时Proto Marshal的方式能够自动识别oneof类型的属性 因此我们得出结论在直接序列化Message时最好使用Proto Marshal的方式进行序列化防止特殊的属性不能够识别而且该序列化的方式更加节省空间缺点则是序列化的结果可读性不高。 channel方式代替time.Sleep()方法 最新发现的新操作直接上代码 func TestSleep(t *testing.T) {-time.After(time.Second) // 相当于time.Sleep(time.Second)}本期到此结束~
http://www.zqtcl.cn/news/106471/

相关文章:

  • 新吴区住房和建设交通局网站小程序商城哪家好排行榜
  • 中小学网站建站模板长春火车站咨询电话
  • c2c网站特点公司网站建设亚运村
  • 邢台wap网站建设费用黑帽seo之搜索引擎
  • 如何用阿里云做网站刷题网站怎么做
  • 织梦制作手机网站上海猎头公司名单
  • 免费生成图片的网站wordpress 购物
  • 江西建设部网站国际新闻最新消息今天2023
  • 怎么做网站啊wordpress英文显示改中文
  • 建筑专业网站有哪些网站标题seo外包优化
  • 浙江建设厅网站施工员报名中国建设协会官网站
  • 网站建设优化是干嘛上海今天最新的新闻
  • 网站大全浏览器软文的概念
  • 盐山做网站价格莱芜征婚吧
  • 具有品牌的微网站建设网站设计培训班前台
  • 网站推广工具推荐html网站地图在线生成
  • 成都本地网站建设青岛电子商务的网站建设
  • 北京网站开发培训河南省百城建设提质工程网站
  • 郑州专业建网站南通网站建设技术支持
  • 简约网站程序网络营销方式较为单一
  • 绍兴企业自助建站123房产网
  • 科技类网站设计特点备案 网站首页地址
  • 做兼职网站网站建设培训速成
  • 开源的网站管理系统商务网站设计与建设实训
  • 东莞三合一网站制作江阴做网站的公司有
  • mvc5 网站开发之學 pdf百度搜索引擎首页
  • 手机进入网站自动识别城阳区规划建设局网站
  • 网站开发平台的公司订票网站开发公司
  • 郑州网站推广信息网架结构厂家
  • 提升网站流量的方法汕头站扩建