
[英]Sending value into Channel and Reading output when Ready
我正在尝试使用 Golang 中的两个通道构建接收方和发送方模式。 我正在执行一项任务(API 调用),并收到一个Response结构。 我的目标是,当收到响应时,我想将其发送到另一个通道 ( writeChan ) 以进行额外处理。 我想持续读取/收听该接收通道 ( respChan ) 并处理 ...
[英]Sending value into Channel and Reading output when Ready
我正在尝试使用 Golang 中的两个通道构建接收方和发送方模式。 我正在执行一项任务(API 调用),并收到一个Response结构。 我的目标是,当收到响应时,我想将其发送到另一个通道 ( writeChan ) 以进行额外处理。 我想持续读取/收听该接收通道 ( respChan ) 并处理 ...
[英]Fetch new key on JWT Signature Validation
为了提供一些上下文,我正在尝试使用公钥验证 JWT 签名。 公钥会在数小时后过期,这可能会发生变化。 现在的问题是,如果验证失败,我不知道是因为令牌无效还是公钥过期而失败。 为了解决这个问题,我正在做以下事情: 当出现验证错误时,从一些 URL 中获取一个新密钥使用更新的密钥来验证令牌如果还是失败, ...
[英]Run watcher fsinotify to watch configuration file changing | GO
我正在尝试使用 fsinotfiy lib 在 go 中运行观察程序以跟踪配置 json 文件更改 - 使用此代码 我希望在进程运行期间得到注释,每当我更改 json 文件时 ...
[英]Fatal Error - All Goroutines are asleep! Deadlock
我很困惑为什么这段代码会死锁。 我收到关于 goroutines 正在睡觉的致命错误。 我正在使用一个等待组来同步并等待 goroutines 完成,并传递我创建的一个等待组的地址而不是复制。 我尝试了有无缓冲区,但仍然如此。 ...
[英]fatal error: all goroutines are asleep - deadlock | Go Routine
问题是 goOne 和 goTwo 函数都分别向通道 ch1 和 ch2 发送值,但是在主 function 中没有这些值的相应接收器。这意味着通道被阻塞,程序无法继续。 导致main function中的select语句无法从通道读取,所以一直执行default case。 Output: 我正 ...
[英]How to take input when outputting?
我想要实现的是某种应用程序,它将大量信息记录到控制台(例如,从 0 到 1000000000000 的数字)以及通过在控制台中键入命令来停止执行的能力(例如“停止”)。 我想到了使用 goroutines 的想法,但是,我无法输入命令,因为输入字段正在更改为 output。 这是我的代码: 我得到 ...
[英]Go producer consumer avoiding deadlock
我在 go 中有一个消费者和生产者的代码。虽然我已经在这里问过这个问题以进行代码审查,并且这个想法的很大一部分是从这里的这个线程派生出来的,但这里是 playground 中的代码。 此代码有多个生产者和消费者共享同一个频道。 此代码具有错误处理机制,如果任何工作人员(生产者或消费者)出错,则所有工 ...
[英]go func for db insert operation inside a for loop
我是戈朗的新手。 我已经阅读了大约 go 个例程。 但我想知道它是否可以用于数据库插入操作。 我有以下情况需要在每一行中插入不同类型产品的行。 例如:如果我有 5 个产品,我需要将其 id、名称、created_at 作为行插入。所以 5 个产品总共有 5 行。下面的方法好用吗 我在使用和不使用 ...
[英]Should I run a goroutine for each api request using Fiber?
所以我正在使用Fiber构建一个 Rest API 我想知道是否要在 goroutine 中运行每个处理程序 function。 例如,假设我有以下路线: 我是否应该更改为以下内容: 我应该这样做吗? 我看过这个问题,它说不,但它针对的是.net/http package,所以它并不真正适用。 谢 ...
[英]Writing to a slice by a channel and a goroutine: why slice is eventually empty
我运行这个 function:func Run() () { // This slice is going to be filled out by a channel and goroutine. vertices := make([]Vertex, 0) var wg s ...
[英]Why is fasthttp.Client slow when used concurrently to consume an API?
这是第一种情况。 这是第二种情况。 x-real-service-time是一个header,它记录了服务器处理实际请求和响应所花费的时间。 在第一种情况下,ms 与 x-real-service-time 几乎相同。 在第二种情况下,ms 比 x-real-service-time 慢太多,而 ...
[英]How to use go-routines while parsing text file for URLs with regex
我被赋予了一项任务,以给定的方式使用正则表达式和带有等待组的 goroutine 在文本文件中搜索 URL:文本应该在 N 个工作人员(goroutines)之间划分,每个 goroutine 搜索 //https://,goroutines在 waitgroup 中,最终结果应该是来自所有 go ...
[英]How does Go preempt goroutines in windows?
我读到 goroutines 现在是可抢占的。 抢占是通过sysmon goroutine 完成的,该 goroutine 向已经用完其时间片的 goroutines 发送停止信号。 在 posix 系统上,我相信这是通过pthread_kill完成的。 我的问题是:由于 windows 不支持线 ...
[英]Why Golang scheduler uses two Queues (global run queue and local run queue) to manage goroutine?
我正在阅读 Golang 如何在内部管理应用程序中新创建的 goroutine。 而且我开始知道运行时调度程序使用队列来管理创建的 goroutines。 全局运行队列:所有新创建的goroutine都放在这个队列中。 本地运行队列:所有即将运行的 go 例程都分配到本地运行队列,调度程序将从那里 ...
[英]Deadlock while waiting for piped io.Copy in Goroutine
在下面的代码中,对io.Copy的调用永远不会返回; 它只是无限期地阻塞,导致死锁。 仅当io.Pipe用于将read io.Reader连接到os.Stdout io.Writer时才会发生此行为。 但是,我需要使用 pipe,因为在我的完整代码中,我使用io.MultiWriter和io.Pip ...
[英]Golang goroutine and mysql
我试图通过 goroutines 查询数据库,但我经常遇到查询数量的限制,我无法以任何方式解决这个问题:( 但每次我有“阅读:连接重置”或“连接太多” 我究竟做错了什么? 请帮帮我。 提前致谢。 这是我的代码。type Page struct { Stat int } func main ...
[英]SSH proxy, bad packet length
在 Go 中实现 ssh 代理,出现错误数据包长度错误,这些是调试模式下 ssh 的错误: 代码: 编辑:为有关如何启动连接和重现错误的相关信息添加了代码。 我最好的猜测是 ssh 协商过程被中断,事情变得不同步。 ...
[英]Goroutine Kafka Consumers
我目前有一个程序可以创建一个大小为 1 的工作组,然后调用 startworker: 写CreateGroup的地方: Startworker 是这样写的: 这适用于大小为 1 的工作组,但每次尝试使它适用于更大的工作组都失败了——到目前为止我所学到的是我想要context.WithCancel( ...
[英]why I push false to channel once, but select got false twice in golang?
我是golang的新手,正在研究golang的并发,并尝试写了一个简单的爬虫demo,当我读取所有给定的url时,我向processChannel推送一个false ,这个推送只会执行一次; 然后在其他 goroutine 中,我在processChannel上选择,当得到一个false时,我关闭 ...
[英]Why do I get - go routines are asleep error for producer consumer issue
这是代码 - go routine 中的生产者和多个消费者。 生产者正在向一个通道发送信息,多个消费者(每个消费者都通过一个 go-routine)应该并行读取它。 这是去游乐场的链接 - https://go.dev/play/p/yNdATAEexPB 我得到的错误是 - ABC 致命错误: ...