问题标签 [go-playground]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - 我可以将 3rd 方包导入 golang 游乐场吗
我用谷歌搜索但没有答案。是否可以?如果是,该怎么做?
Go Playground 链接: https: //play.golang.org/
go - go playground 可以导入哪些包?
我很难在http://play.golang.org/的 go playground 中找到可以导入哪些包的列表。我试图为ebnf使用(显然是实验性的)包。然而,即使是一个简短的程序也不会从中golang.org
导入(第 4 行的导入中断):
是否有任何地方说明只有golang.org/src/中的基础包会导入(如果是这样的话)?
我真的很想玩这个实验包,甚至像currency
在操场上那样的非实验补充库。
go - Go Playground 和 Go 在我的机器上的差异?
为了解决我对 goroutine 的一些误解,我去了 Go 操场并运行了以下代码:
正如我所料,Go Playground 出现了一个错误:Process takes too long。
这似乎意味着在其中创建的 goroutineother
永远运行。
但是当我在自己的机器上运行相同的代码时,我几乎立即得到了这个输出:
这似乎意味着other
当主 goroutine 完成时,里面的 goroutine 退出。这是真的?还是主 goroutine 完成,而另一个 goroutine 继续在后台运行?
go - 如何将一个库从 github 导入到 GO 游乐场?
嗨,我想将第 3 方库导入 GO 操场,我看到了这个问题的答案:https ://stackoverflow.com/a/27813778/6638204但它说这不能完成,但是xiam/go- github 上的playground库声明它可以做到这一点。我尝试使用它,但我不明白我应该做什么。我成功安装了该库并用它来运行不需要第三方库的程序。但我不知道如何导入第三方库。ps:我的机器上安装了docker
testing - How do I use the testing package in go playground?
The testing
package is available in the go playground.
How can I use the go playground to demonstrate testing concepts, without access to go test
?
My assumption is it's possible using the testing.RunTests function. My attempts to do so always generate only "testing: warning: no tests to run".
Example: https://play.golang.org/p/PvRCMdeXhX
For context, my use case is for sharing quick examples of tests, examples and benchmarks with colleagues. I rely on go playground for sharing code snippets like this often.
go - 如何在 Go Playground 中定义不同的文件或包?
如何在Go Playground中定义不同的文件或包?
特别是为了检查它可以很方便地在操场内定义一个包。但是为了管理这个我需要定义不同的文件。我该如何管理?
go - 如果没有其他要执行的语句,为什么 time.Sleep 不起作用?
我正在尝试在下面的代码中运行它
正如预期的那样,它等待 6 秒,打印“完成”,然后退出
但是如果我删除打印语句,
它不会等待并立即退出。为什么?
因此,请看下面的代码
在这里,当没有接收者可以读取时, count
goroutine 将被阻止尝试发送到通道,并且即使在它之后有一条语句,该函数也会立即退出。但是当我删除声明时i
main
sleep
count
goroutine 会一直计数到 3,因为函数main
确实会等待 5 秒,如前所述。
这里发生了什么?
arrays - 如何将 Go validator.FieldLevel.Field() 转换为字符串数组
我有一个具有这种结构的复杂对象。
我需要在枚举中测试列表思考,使用gopkg.in/go-playground/validator.v9
:
这个例子使用了字符串的概念,但是我怎样才能构建到 []string 来迭代呢?
go - 为什么 Go 测试阻塞通道不报告死锁
我在使用频道进行测试时遇到了一个奇怪的问题。
在正常的main函数中,下面的代码会报死锁错误。
但是在我的机器上,这个简单的测试似乎永远陷入僵局或阻塞,或者由于我不知道的任何原因而无法退出。我在 Emacs 和终端中都调用了测试,得到了相同的结果。命令是go test -run TestChan\$ . -v -count=1
。我尝试了一个更简单的命令(go test -run TestChan
),但仍然得到相同的结果。我在 Go 操场上尝试过(这里),它报告了死锁错误。我的 Go 环境有问题吗?
-------------------------------------------------- --------------------------------------------------
更新
看来我的问题没有说清楚。情况是:相同的测试在我的机器和 Go 操场上表现不同。现在我设置-timeout 5s
了,但错误信息与 Go 操场上的不同。我发现与本地不同的另一件事是测试运行程序似乎与我本地不同。它在包装之下go-faketime
。
本地输出
去游乐场输出
我的问题是
- 为什么 Go 测试阻塞通道不报告死锁?
- 如果它是按设计工作的(因为同时还有其他 goroutines 运行),那么 Go 游乐场中的相同测试如何报告相同的错误消息,就好像代码在 main func 中运行一样?(这个问题从 Go 频道的领域发散到 Go Playground 如何处理测试)
go - 包含连字符的包名
我很难理解为什么当我在包中有连字符时我的代码会抱怨。例如,如果我有一个包名 foo-bar 并且我声明了该包名
那么为什么 Go 编译器会抱怨呢?这是否意味着我们不应该在 go 包名称中使用连字符?
由于有许多 repo 在包名称中使用连字符,我做错了吗?