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

金融网站模版建立网站的技术路径

金融网站模版,建立网站的技术路径,设计中国第一架飞机,好的网站页面任务数量为50#xff0c;并发在5#xff0c;全部都要执行 package mainimport (fmttime )type Con struct {num inttime string }func main() {//channel实现并发控制// 定义同时执行的任务数量concurrencyLevel : 5//总任务数totalTask : 50// 创…任务数量为50并发在5全部都要执行  package mainimport (fmttime )type Con struct {num inttime string }func main() {//channel实现并发控制// 定义同时执行的任务数量concurrencyLevel : 5//总任务数totalTask : 50// 创建一个有缓冲的 channel 用于控制并发数taskChan : make(chan int, concurrencyLevel)// 创建一个 channel 用于标记所有任务完成doneChan : make(chan *Con, totalTask)// 启动指定数量的 goroutine 来并发执行任务for i : 0; i concurrencyLevel; i {go concurrentTask(taskChan, doneChan)}// 发送任务到 taskChan//循环发送任务保证每个任务都能发送到如果发送任务时 taskChan 阻塞等待一段时间再重试for i : 1; i totalTask; i {select {// 发送任务到 taskChancase taskChan - i://fmt.Printf(任务 %d 已发送\n, i)default:fmt.Println(任务发送阻塞等待空闲..., i)// 等待 1 秒钟再重试time.Sleep(1 * time.Second)i--}}// 关闭 taskChan通知所有的 goroutine 没有更多的任务close(taskChan)// 关闭 doneChanclose(doneChan)等待所有任务完成并关闭 doneChanfor res : range doneChan {fmt.Printf(任务 %d 完成, 完成时间%s\n, res.num, res.time)}fmt.Println(所有任务已完成)}// 模拟一个并发执行的任务 func concurrentTask(taskChan chan int, doneChan chan *Con) {defer func() {// 捕获 panic,recover() 函数可以让程序从 panic 中恢复if r : recover(); r ! nil {fmt.Println(任务发生panic正在恢复:, r)}}()// 从 taskChan 中获取任务for task : range taskChan {fmt.Printf(处理任务 %d\n, task)time.Sleep(1 * time.Second) // 模拟任务执行时间//任务执行完毕将任务结果发送到 doneChandoneChan - Con{num: task, time: time.Now().Format(2006-01-02 15:04:05)}}} 任务数量为50并发在5遇到阻塞的就不再执行 package mainimport (fmttime )type Con struct {num inttime string }func main() {//channel实现并发控制// 定义同时执行的任务数量concurrencyLevel : 5//总任务数totalTask : 50// 创建一个有缓冲的 channel 用于控制并发数taskChan : make(chan int, concurrencyLevel)// 创建一个 channel 用于标记所有任务完成doneChan : make(chan *Con, totalTask)// 启动指定数量的 goroutine 来并发执行任务for i : 0; i concurrencyLevel; i {go concurrentTask(taskChan, doneChan)}// 发送任务到 taskChan//循环发送任务保证每个任务都能发送到如果发送任务时 taskChan 阻塞等待一段时间再重试for i : 1; i totalTask; i {select {// 发送任务到 taskChancase taskChan - i://fmt.Printf(任务 %d 已发送\n, i)default:fmt.Println(任务发送阻塞等待空闲..., i)}}// 关闭 taskChan通知所有的 goroutine 没有更多的任务close(taskChan)// 关闭 doneChanclose(doneChan)等待所有任务完成并关闭 doneChanfor res : range doneChan {fmt.Printf(任务 %d 完成, 完成时间%s\n, res.num, res.time)}fmt.Println(所有任务已完成)}// 模拟一个并发执行的任务 func concurrentTask(taskChan chan int, doneChan chan *Con) {defer func() {// 捕获 panic,recover() 函数可以让程序从 panic 中恢复if r : recover(); r ! nil {fmt.Println(任务发生panic正在恢复:, r)}}()// 从 taskChan 中获取任务for task : range taskChan {fmt.Printf(处理任务 %d\n, task)time.Sleep(1 * time.Second) // 模拟任务执行时间//任务执行完毕将任务结果发送到 doneChandoneChan - Con{num: task, time: time.Now().Format(2006-01-02 15:04:05)}}}
http://www.pierceye.com/news/64304/

相关文章:

  • 网站开发团队名称用ai做网站
  • 网站地图制作软件做360优化网站都有哪家
  • 在哪些软件上建设网站windows优化大师的作用
  • 衡阳高端网站建设做个医院网站多少钱
  • 写作文网站wordpress高级轮播
  • 找施工员在哪个网站上找wordpress 发布视频
  • 西红柿怎么做网站wamp做的网站外网怎么访问
  • 网站ftp管理工具怎么做示爱的网站
  • 峨边网站建设学前端要逛那些网站
  • 微餐饮建站费用天猫优惠券网站怎么做
  • 搜狐网站建设的建议网站开发平台开发
  • 网站开发属于商标哪个类别网站建设优化课程
  • 公司网站seo怎么做微信如何申请小程序商店
  • 服装网站建设开发语言网站开发 图片库
  • 做我姓什么的网站新乡公司做网站
  • 做淘宝推广怎样网站合适四川采集app
  • 网站优化软件排行榜官方网站建设合同
  • 域名服务器没有该网站的域的列表网站开发制作的流程有哪些
  • 网站建设优化开发公司排名dede网站301怎么做
  • 北京好的网站制作公司网站首页设计
  • 网站建设 公司排名邯郸网站制作
  • 高端定制网站设计珠海购物网站制作
  • 网站编程学习教育学校网站做
  • 天空彩票网站怎么做做 了一个 家教 网站
  • 外贸建站有哪些公司阿里巴巴建网站
  • 网站主题包括深圳网站制作要多少钱
  • 永康网站建设服务手机营销网站建设
  • 油金地 做网站自己做的网站图片加载过慢
  • 备案网站 cdn网站建设设计 飞沐
  • 网站建设 技术服务电商网站建设期末考试