goroutine 相关问题

goroutine是一个轻量级的执行线程,由Go语言运行时管理。

关于主要例程和同时监听同一频道的子例程的问题

func main(){c:= make(chan os.Signal,1)signal.Notify(c)ticker:= time.NewTicker(time.Second)stop:= make(chan bool)go func(){defer func( ) { 停

回答 1 投票 3

不接收来自频道的消息

编辑:我添加了一小部分文件,我正在使用(7 GB)并尝试运行程序,我可以看到:致命错误:所有goroutines都睡着了 - 死锁! goroutine 1 [chan receive]:main.main()...

回答 2 投票 0

Goroutines:Broadcaster在收到第一条消息后停止工作

我使用服务器从客户端向所有连接的客户端广播/回显消息。服务器只广播它收到的第一条消息,尽管它仍然接收消息 - 如fmt.Println([] byte(...

回答 1 投票 0

你如何使用WaitGroup确保goroutine在for循环中完成?

每次for循环迭代时我都会在goroutine中运行一个函数,而我正在使用sync.WaitGroup来确保goroutine都完成了。但是,我正在测试并发性的奇怪行为......

回答 1 投票 2

[Go]:使用并发性逐行读取文件

我想做什么在GetLine中,我试图使用bufio.Scanner逐行解析文件并尝试并发尝试。在获取每行中的文本后,我通过...发送它

回答 1 投票 1

工人池Golang的最佳规模

我正在构建一个使用goroutines“工作池”的Golang应用程序,最初我开始创建一些工作池。我想知道多核心工作者的最佳工作人数是多少......

回答 1 投票 0

Golang HTTP请求工作池

我正在尝试构建一个系统,工作池/作业队列,以在每个API端点上处理尽可能多的http请求。我调查了这个例子并让它工作得很好,除了我跌跌撞撞......

回答 3 投票 -1

运行Go异步操作并写入map

我有这个项目试图在Go中同时运行无限大的查询。父项目都是Python。我需要能够跟踪查询结果,就像在地图中一样。输入:{'...

回答 3 投票 1

从goroutine接收一定时间的值

我有一个goroutine,可以生成无限数量的值(每个值比最后一个更合适),但是找到每个值需要越来越长的时间。我正试图找到一种方法来增加时间......

回答 2 投票 0

goroutine调用exec后主线程没有运行?

我正在阅读Go https://gobyexample.com/execing-processes中的exec,并尝试使用goroutines进行相同操作。在下面的代码中,我试图让Go运行ls,然后打印成功消息...

回答 1 投票 0

如何阻止从UDP读取的goroutine?

我有一个go程序,它使用goroutine来读取UDP数据包。我想使用select子句和“停止”通道来关闭goroutine,以便在不再需要时立即关闭。这里 ...

回答 1 投票 1

在频道上发送指针

我正在尝试使用通道来实现一种工作池。请看下面的代码https://play.golang.org/p/g7aKxDoP9lf(The Go Playground)包主要导入(“fmt”“...

回答 2 投票 3

推迟等待子程序执行完毕?

我有这样的功能:func TestDefer(lock sync.RWMutex,wait time.Duration){lock.Lock()defer lock.Unlock()// start goroutine go func(){time.Sleep(wait)}()} I ...

回答 2 投票 -1

Goroutine执行命令

我是golang的初学者,我正在学习goroutine和频道。直觉上,我认为golang中的gorountine本质上是一个独立运行的线程。因此,如果有多个......

回答 2 投票 -1

go中一次处理许多GET请求

我正在编写这个API,它是slack bot应用程序的后端,将被许多用户使用。在我的api中的一个API端点中,我正在调用外部API来获取一些数据,因此我可以按摩...

回答 1 投票 0

需要同步Go例程

这个特殊的Go代码使用一个通道来同步goroutines。 //我们可以使用渠道来同步执行//跨goroutines。这是一个使用//阻塞接收等待...的示例

回答 2 投票 -3

去,tcp太多打开文件调试

这是一个简单的Go http(tcp)连接测试脚本func main(){ts:= httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter,r * http.Request){fmt.Fprintln(w,“你好, ...

回答 7 投票 12

© www.soinside.com 2019 - 2024. All rights reserved.