goroutine

    -2热度

    2回答

    我需要并行运行多个函数。 如果函数返回true(在通道上发送true),那么最终结果应该是true。 如何使用goroutines和通道实现此目的? // Some performance intensive function func foo(i int, c chan bool) { // do some processing and return either true or f

    2热度

    2回答

    转到文档说: 当协程块,如通过调用拦截系统调用,所以他们赢得了运行时自动移动在同一操作系统线程其他协同程序的不同,运行的线程不会被阻止 但是,运行时如何检测到goroutine被阻塞? 例如,如果我将在go-routine之一中运行计算,它会被评估为阻塞操作吗? package main import ( "fmt" "runtime" ) func f(from st

    2热度

    1回答

    我有一个go-routine将对象添加到通道,然后我有4 go-routines来处理通道的对象。处理只不过是将对象添加到数组中。但是在很少的时候,这些对象从最终数组中丢失。所以我假设在某个时候频道停止收集对象。我有以下代码: package main import ( "log" "sync" ) func main() { j := 0 for

    1热度

    1回答

    我正在处理搜索引擎项目。为了更快的抓取速度,我使用每个链接访问一个goroutine。但是我遇到了两个问题,让我感到惊讶! 第一个是一个代码示例: package main import "fmt" import "sync" import "time" type test struct { running int max int mu sync.Mu

    0热度

    1回答

    package main import "fmt" import "time" func main() { ticker := time.NewTicker(time.Millisecond * 500) go func() { for t := range ticker.C { fmt.Println("Tick at", t)

    -1热度

    3回答

    我试图建立一个系统,工作池/ jobqueue,以尽可能多地在每个API端点上处理http requests。我看着这example,并得到它的工作很好,除了我偶然发现的问题,我不明白如何将pool/jobqueue扩大到不同的端点。 对于方案的缘故,让我们勾画有跨越不同的端点和请求类型一百万请求/ min的Golang http服务器GET & POST ETC. 我该如何扩展这个概念?我应该为

    0热度

    3回答

    我正在关注https://blog.golang.org/pipelines文章以实施几个阶段。 我需要其中一个阶段来引入流水线中下一阶段传递事件之前几秒的延迟。 我对下面的代码的担心是,它会产生无限数量的go.sout()方法,在传递事件之前。有没有更好的方法来做到这一点? 谢谢! func fooStage(inChan <- chan *Bar) (<- chan *Bar) {

    8热度

    1回答

    Kotlin corutines是有限状态机和一些任务运行器的糖(例如,默认的ForkJoinPool)。 https://github.com/Kotlin/kotlin-coroutines/blob/master/kotlin-coroutines-informal.md#implementation-details 换句话说,java/kotlin运行时中没有运行时协同程序(但可以通过ht

    0热度

    1回答

    我的程序每隔20秒检查一次网站上的Rebody和ip地址的文本变化,她将其包含在周期中,当她发现文本发生变化时,周期已经不可能了,因为无休止的goroutine开始写入所有发现的ip地址信息,我无法进入验证。我需要以某种方式在验证时停止goroutine,检查并再次启动。 如何做? 代码: func main() { url := os.Args[1] for {

    4热度

    2回答

    我有我正在刮的网址列表。我想要做的是将所有成功抓取的页面数据存储到一个通道中,当我完成时,将其转储到一个切片中。我不知道我会得到多少成功的提取,所以我不能指定一个固定的长度。我预计代码将达到wg.Wait(),然后等到所有的wg.Done()方法被调用,但我从未达到close(queue)声明。寻找一个类似的答案,我碰到这个来得如此回答 https://stackoverflow.com/a/31