问题标签 [go]

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.

0 投票
21 回答
31440 浏览

c++ - Is assert evil?

The Go language creators write:

Go doesn't provide assertions. They are undeniably convenient, but our experience has been that programmers use them as a crutch to avoid thinking about proper error handling and reporting. Proper error handling means that servers continue operation after non-fatal errors instead of crashing. Proper error reporting means that errors are direct and to the point, saving the programmer from interpreting a large crash trace. Precise errors are particularly important when the programmer seeing the errors is not familiar with the code.

What is your opinion about this?

0 投票
5 回答
28908 浏览

pointers - 在 Go 中使用指针有什么意义?

我知道 Go 中的指针允许函数参数的突变,但如果它们只采用引用(使用适当的 const 或 mutable 限定符),那不是更简单。现在我们有了指针,并且对于一些内置类型,如地图和通道,隐式通过引用传递。

我是否遗漏了某些东西,或者 Go 中的指针只是不必要的并发症?

0 投票
8 回答
109876 浏览

go - 如何在 Go 中获取系统命令的输出?

假设我想在 go 程序中运行 'ls',并将结果存储在字符串中。在 exec 和 os 包中似乎有一些 fork 进程的命令,但它们需要 stdout 等的文件参数。有没有办法将输出作为字符串?

0 投票
2 回答
1898 浏览

go - 强制 goroutine 进入同一个线程

有没有办法确保 goroutine 只在特定的 OS 线程中运行?例如,当 GUI 操作必须在 GUI 线程中运行,但可能有多个 goroutines 运行 GUI 代码时。

GOMAXPROCS(1)在技​​术上完成这项工作,但这违背了多线程的目的。

LockOSThread()也可以,但这也阻止了任何其他 goroutine 在该线程中运行。

有没有办法做到这一点,或者需要同一个线程的所有东西都必须在同一个 goroutine 中运行?

0 投票
1 回答
948 浏览

sockets - Go 中的网络编程有哪些选择?

我正在寻找使用 TCP 套接字编写一个简单的客户端/服务器。任何想法如何在 Go 中进行网络编程?

0 投票
4 回答
3992 浏览

networking - 在 Go 中模拟 tcp 连接

在 Go 中,一个 TCP 连接(net.Conn)是一个 io.ReadWriteCloser。我想通过模拟 TCP 连接来测试我的网络代码。我有两个要求:

  1. 要读取的数据存储在字符串中
  2. 每当写入数据时,我都希望将其存储在某种缓冲区中,以便以后访问

是否有用于此的数据结构,或者一种简单的方法?

0 投票
2 回答
6526 浏览

multithreading - go map 结构是线程安全的吗?

Go map 类型的线程安全吗?我有一个程序,它有许多 goroutine 读取和写入映射类型。如果我需要实施保护机制,最好的方法是什么?

0 投票
1 回答
379 浏览

process - 编译 Go 编程语言有多难?

基本上就是标题所说的:编译你的平均 go* 文件的过程是什么?将它放在编译器上并执行结果?


*注意:OP 在回滚之前编辑了将“go”替换为“C”的问题。所以有些答案是没有意义的。

0 投票
4 回答
1040 浏览

go - Go 中是否有一个函数可以打印对象的所有当前成员名称和值?

我正在寻找 PHP 的 print_r 或 python 的dict之类的东西。有人知道这个功能是否存在,或者它需要实现的东西吗?

0 投票
9 回答
30870 浏览

ide - 支持 GUI 设计的 Go IDE

我正在查看 Go 语言,但我想知道是否有专门为它开发的 IDE,但具有 GUI 设计功能,如 Visual Studio 和 Netbeans。