3

go 协程请求数据

 1 year ago
source link: https://www.v2ex.com/t/909006
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

go 协程请求数据

我一个接口里边,需要多次操作数据库,现在想通过协程来实现。 下边这个 demo 是一个样例, 我在 resp 怎么区分协程的返回值,这里边还有些不太清晰。

func main() {
    var ch = make(chan []byte)
    go request("https://www.baidu.com", ch)
    go request("https://www.taobao.com", ch)
    go request("https://www.google.com", ch)

    i := 0
    timer := time.NewTimer(time.Second * 3)
L:
    for {
        select {
        case <-timer.C:
            break L
        case resp := <-ch:
            fmt.Printf("%d\n", len(resp))
            // 接收 3 个之后关闭 chan
            i++
            if i == 3 {
                close(ch)
                break L
            }
        }
    }
    // more code...
}

Recommend

  • 48

    首先,我们需要先明确一下问题的描述:本文所要讨论的共享数据可不是指的 cookie、session 之类的概念,它们描述的是在「请求间」共享数据,而我们关注的是在「请求中」共享数据,也就说是,在每个请求中的各个 middleware 和 handler 之...

  • 31
    • 掘金 juejin.im 5 years ago
    • Cache

    前端数据请求的终极方案

    数据请求是我们开发中非常重要的一环,如何优雅地进行抽象处理,不是一件很容易的事情,也是经常被忽略的事情,处理不好的话,重复的代码散落在各处,维护成本极高。 所以我们需要好好梳理下数据请求涉及到哪些方面,对它有整体的管控,从而设计出扩展性高的方案。...

  • 55

  • 31
    • www.cnblogs.com 4 years ago
    • Cache

    vue中数据请求的三种方法

    注意请求可能存在跨域问题,需要去配置好 这三种建议使用axios 1.resource Vue 要实现异步加载需要使用到 vue-resource 库。 Vue.js 2.0 版本推荐使用

  • 11
    • studygolang.com 4 years ago
    • Cache

    gin请求数据校验

    前言 最近优化 gin+vue的前后端分离项目 代码时候,发现代码中对请求数据的校验比较繁琐,于是想办法简化它。最终我发现了

  • 24
    • 微信 mp.weixin.qq.com 4 years ago
    • Cache

    React 中请求远程数据的四种方法

    React 是一个专注的组件库。因此,它对如何请求远程数据没有什么建议。如果要通过 HTTP 请求数据并将其发送到 Web API

  • 14
    • zhuanlan.zhihu.com 3 years ago
    • Cache

    用 React Query 来管理数据请求

    用 React Query 来管理数据请求在项目中,通常都需要跟服务端进行异步的数据交互,这包括查询和变更。以一个简单的列表查询为例,我们通过 axios 去请求服务端的列表数据:

  • 18

    爬虫过程中,几乎都会遇到post提交方式和get提交方式。传的参数也是有很多方式。现在具体介绍一下post和get区别。 最普通的答案 我一直就觉得GET和POST没有什么除了语义之外的区别,自打我开始学习Web编程开始就是这么理解的 。

  • 1

    服务端经常需要返回一个列表,里面包含很多用户数据,常规做法当然是遍历然后读缓存。 使用Go语言后,可以并发获取,极大提升效率。 使用channel

  • 2

    go 协程,数据竞争及对应解决方法 go 协...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK