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

免费网站怎么建如何提升顾客的体验和服务

免费网站怎么建,如何提升顾客的体验和服务,网站qq 微信分享怎么做,网站全站优化通过并发编程在 Go 程序中实现的3种常见的并发模式。 参考#xff1a;https://cloud.tencent.com/developer/article/1720733 1、Runner 定时任务 Runner 模式有代表性#xff0c;能把#xff08;任务队列#xff0c;超时#xff0c;系统中断信号#xff09;等结合起来…通过并发编程在 Go 程序中实现的3种常见的并发模式。 参考https://cloud.tencent.com/developer/article/1720733 1、Runner 定时任务 Runner 模式有代表性能把任务队列超时系统中断信号等结合起来形成一项定时任务。任何一个条件满足触发程序就结束了。 import (errorsosos/signaltime )//Runner 在给定的超时时间内执行一组任务 // 并且在操作系统发送中断信号时结束这些任务 type Runner struct {//从操作系统发送信号interrupt chan os.Signal//报告处理任务已完成complete chan error//报告处理任务已经超时timeout -chan time.Time//持有一组以索引为顺序的依次执行的以 int 类型 id 为参数的函数tasks []func(id int) }//New 函数返回一个新的准备使用的 Runnerd自定义分配的时间 func New(d time.Duration) *Runner {return Runner{interrupt: make(chan os.Signal, 1),complete: make(chan error),//会在另一线程经过时间段 d 后向返回值发送当时的时间。timeout: time.After(d),} }//Add 将一个任务加入到 Runner 中 func (r *Runner) Add(tasks ...func(id int)) {}//Start 开始执行所有任务并监控通道事件 func (r *Runner) Start() error {}//执行每一个已注册的任务 func (r *Runner) run() error { }//检测是否收到了中断信号 func (r *Runner) gotInterrupt() bool {}Runner 类型声明了 3 个通道用来辅助管理程序的生命周期以及用来表示顺序执行的不同任务的函数切片。 2、Pool 缓存池 Go 1.6 及之后的版本中标准库里自带有资源池的实现sync.Pool还有更好的gopool后者能控制协程数。 sync.Pool: New、Get、Put // func main() {// 创建一个 sync.Poolvar pool sync.Pool// 设置对象池的 New 函数创建对象pool.New func() interface{} {return New Object}// 获取对象obj : pool.Get()fmt.Println(obj) // 输出New Object// 将对象放回池中pool.Put(Reused Object)// 再次获取对象obj pool.Get()fmt.Println(obj) // 输出Reused Object } func main() {var studentPool sync.Pool{New: func() interface{} { return new(Student) // 例如创建 Student 对象},}//取得对象和归还对象stu : studentPool.Get().(*Student)json.Unmarshal(buf, stu) // 使用线程池的对象studentPool.Put(stu)//Get() 用于从对象池中获取对象因为返回值是 interface{}因此需要类型转换。Put() 则是在对象使用完毕后返回对象池。} gopool NewPool、CtxGo 高性能针对高并发进行了优化性能较 sync.Pool 更高。 灵活性强支持更多的池管理选项比如对象的最大数量、超时时间等。 pool : gopool.NewPool(article_spider, 10, gopool.NewConfig()) //for {} pool.CtxGo(ctx, func() {defer wg.Done()c.dbMutex.Lock()defer c.dbMutex.Unlock()//处理程序})选择指南 只需要基本的对象池并且你的性能需求不是特别高可以选择 sync.Pool。它来自Go 标准库易用适合缓存临时对象减少内存分配带来的开销。 在高并发、低延迟的场景下或者需要更精细的池管理控制可以选择 gopool。它为高并发场景进行了优化提供了更多配置选项适合需要复杂池管理的应用。 3、work 有缓冲通道
http://www.w-s-a.com/news/378510/

相关文章:

  • 洛阳网站建设优惠公司建筑企业上市公司有哪些
  • 营销型网站建设营销型网站建设手机网站设计需要学什么
  • 在线视频网站 一级做爰片南通网站建设找哪家
  • 网站优化文章东莞专业网站建设价钱
  • 哈尔滨网页设计网站模板泰兴建设局网站
  • 响应式网站设计公司报纸做垂直门户网站
  • 陕西旭泽建设有限公司网站企业网站建设软件需求分析
  • 上海公司网站建设方案中企动力西安分公司
  • dedecms网站后台怎样才能上百度
  • 云互联的网站名字亚马逊雨林生物
  • 电商网站功能企查查企业信息查询网
  • 特色网站建设中国住房和城乡建设局官网
  • 长春市住房城乡建设厅网站做白酒网站
  • 自己的网站怎么做的成品免费ppt网站
  • 番禺区网站建设哪里有泰安公司
  • 网站制作详细过程网站开发最强工具
  • 孟村县做网站长春城投建设投资有限公司网站
  • 国家重大建设项目库网站wordpress安装 var
  • 供求信息网站建设报价网站制作 苏州
  • 动漫建模代做网站百度一下wordpress nginx 固定链接
  • 广州网站开发网络公司网站建设的书
  • php手机网站开发教程家政网站怎么做
  • 视频网站的建设预算通信科技网站设计
  • 糖果网站建设策划书淘宝客网站开源
  • 建站公司还有前途吗cf网站编程
  • 网站建设需求确认表建站工具 比较
  • 刚建设的网站多久能在百度查到考试系统 微网站是什么样的
  • 商城网站建设高端企业网站建设劣势
  • 网站建设征集通讯员的通知seo推广外包
  • 微信公众号微网站建设专业网站建设出售