Go问答技术文章
-
- Golang将interface{}转换为N大小的数组
- 我有一个包含在接口中的t数组。我事先知道数组的大小。如何编写一个通用函数来返回任意数组长度的数组(或切片)?例如。对于尺寸3,我想要类似的东西varvaluesinterface{}=[3]byte{1,2,3}varsize=3//Iknowthesizevar_=values.([size]byte)//wrong,arrayboundmustbeaconstexpression我无法真正进行类型切换,因为[1]byte与
- Golang · Go问答 | 2年前 | 432浏览 收藏
-
- Worker Pool并发模式中何时关闭结果通道?
- 我试图了解golang中的并发性是如何工作的,因为我正在尝试批量处理一个大型json文件,但我不确定何时应该关闭我的通道。下面是代码,packagemainimport("fmt""os""time")typeorderstruct{recipestring`json:"recipe"`postcodestring`json:"postcode"`deliverytimewi
- Golang · Go问答 | 2年前 | 117浏览 收藏
-
- 将返回错误分配给下划线
- 我一直在github.com/lib/pq上阅读一些golang代码,它提供了与postgres数据库交互的驱动程序。在代码中我遇到了这个:gofunc(){select{case
- Golang · Go问答 | 2年前 | 328浏览 收藏
-
- Go:使用一个通道接收多个 goroutine 的结果
- 我有一个包含数千条记录的csv文件。我处理goroutine中的每条记录,并且希望将处理记录的所有结果收集到一个切片中,以便将它们写在另一个文件中。我的代码的简化版本是:varwgsync.waitgroupfuncmain(){c:=make(chanstring,1)csvfile,err:=os.open("data.csv")reader:=csv.newreader(bufio.newreader(csvfile))
- Golang · Go问答 | 2年前 | 391浏览 收藏
-
- 如何解决写入 CSV 时出现“短写入”错误
- 我一直遇到这个问题,我似乎无法弄清楚发生了什么。我有将一些信息附加到csv的代码。该信息来自多个线程,csv记录时间。在程序执行过程中的某个时刻,代码将开始输出“shortwrite”,而不是写入csv。打印要输出的数据,“好”写和“短”写似乎没有区别,一旦“短写”错误停止,它就会继续,直到程序重新启动。每次需要写入csv时都会调用此代码。output:=[]string{time.message,strconv.formatint(time.duration,
- Golang · Go问答 | 2年前 | 442浏览 收藏
-
- 如何在 Mac 上使用 Windows 平台上的 Bazel 运行 Go 代码?
- 我必须在Windows平台上使用Bazel测试Go代码,以确保测试也在Windows上通过。不过,我有一台Mac机。我尝试过VirtualBox/Vagrant设置并共享该目录。我也可以去那里工作。Bazel给出了与VisualStudio的一些版本冲突,但我有一个使用gotest的解决方法。是否有一个已知的MacWindows映像,其中包含Golang、Bazel等所有设置,我可以简单地使用dockerrun或其他东西?
- Golang · Go问答 | 2年前 | 174浏览 收藏
-
- 使用 Reflect 检测 nil 值
-
我使用reflect包创建一个可重用的json解析器,该解析器在运行时将json数据映射到特定结构。我希望它能够检测到特定必填字段何时缺失。我使用以下方法创建一个变量“parsedinput”:parsedinput:=reflect.new(reflect.typeof(exampleinputobject).elem())然后,我使用json库将数据解析到该变量中。我现在想要遍历这些值以发现任何缺失的内容:fori:=0;i
- Golang · Go问答 | 2年前 | 391浏览 收藏
-
- 如何在 Go Validator 中只接受多个字段之一?
- typeCoolNamestruct{Foostring`json:"foo"`Barstring`json:"bar"`}使用go验证器,我只想将这两个字段之一设为必填,并在如果两个字段的内容都已满时给出错误。我使用了required_without但它只有助于需要其中之一。我不知道如何验证两个字段是否同时没有内容。
- Golang · Go问答 | 2年前 | 449浏览 收藏
-
- 使用Golang自调用函数
- 无法轻松找到有关如何在golang中创建自调用函数的信息。我的最终目标是从文件中导出地图,如下所示:typeFoostruct{}typeBarstruct{}varTypeMapmap[interface{}]string;funcselfInvoking(){TypeMap=map[interface{}]string{Foo:"foo",Bar:"bar"}}()如何从go中的文件导出这样的填充地图?基本
- Golang · Go问答 | 2年前 | 140浏览 收藏
-
- 减少银杏规格/测试的重复
- 我正在使用ginkgo框架编写测试,并希望减少测试中的重复。假设我有两个测试,它们具有完全相同的中间部分,但开始和结束部分不同。ginkgo提供了BeforeEach函数来从一开始就删除重复项,但我找不到任何语法来在Describe节点中定义一个简单的实用函数。我能想到的最好的办法是将函数分配给变量,但容器节点中不允许变量初始化。
- Golang · Go问答 | 2年前 | 402浏览 收藏
-
- 如何在go lang中发出非阻塞http请求?
- 这是我学习golang的第二天,我正在尝试弄清楚如何发出非阻塞http请求。我正在使用gin框架,并且我有非常简单的代码,如下所示。funcmain(){r:=gin.default()r.get("test",func(c*gin.context){request:=gorequest.new()_,body,_:=request.get("http://tmp.com").end()
- Golang · Go问答 | 2年前 | 206浏览 收藏
-
- 从 bash 到 GO 服务器的 REST post 查询可以工作,但对于 Python 则失败
- 我有goserver来解组它收到的json。当我使用curl执行此操作时它有效,但在python情况下失败。go服务器解组代码:typedatastruct{namespacestring`json:"namespace"`containeridstring`json:"containerid"`}funcnotify(whttp.responsewriter,r*http.request){decoder:=js
- Golang · Go问答 | 2年前 | 437浏览 收藏
-
- 如何模拟 rand.Reader 的故障以进行测试?
- 我正在尝试为我的函数编写单元测试;请注意,它调用rand.read(来自crypto/rand包),它依赖于rand.reader:funcGenerateBytes(lengthint)([]byte,error){bytes:=make([]byte,length)if_,err:=rand.Read(bytes);err!=nil{returnnil,err}returnbytes,nil
- Golang · Go问答 | 2年前 | 145浏览 收藏
-
- 当路由方法不匹配时,在 gorilla mux 中发送自定义响应
- 当路由方法(http动词)不匹配时,如何发送自定义响应?当我在post方法中点击以下路线时r.handlefunc("/destination",handler).methods('get')我想接收(假设它是一个json响应){status:"ERROR",message:"Routemethodnotsupported."}我的想法是,我不想让每个处理程序都进行route.method==$method检查。寻找一种可以定
- Golang · Go问答 | 2年前 | 473浏览 收藏
-
- Reflect.Value 字符串不随 SetString() 改变
- 我在设置reflect.value时遇到了一些麻烦,它是一个不同的字符串。在下面的getvalue()中返回一个reflect.valueval,err:=exp.getfact(t.(*api.event_set).set.key).getvalue()iferr!=nil{ref:=reflect.indirect(val)ref.setstring(t.(*api.event_set).set.value)}点击setstring后,它会引发
- Golang · Go问答 | 2年前 | 140浏览 收藏
查看更多
课程推荐
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- Golang深入理解GPM模型
- Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
- 474次学习
查看更多
AI推荐
-
- ljg-skills
- ljg-skills 是李继刚开源的 AI 技能与提示词集合,面向大模型使用者整理了一批可复用的 prompt、角色设定和任务技能模板,适合用于学习提示词设计、搭建个人 AI 工作流和沉淀团队常用智能体能力。
- 4421次使用
-
- MELO音乐
- MELO音乐是一站式AI视频与音乐制作助手,对标suno, udio的高品质体验。提供伴奏生成、原创写词、无损导出、哼唱识曲、混音变声等全套音频与短视频编辑工具。无论是流行Kpop、电音说唱、民谣古风、摇滚儿歌还是商用轻音乐,MELO为你免费谱曲,轻松做同款!
- 4078次使用
-
- UniScribe
- UniScribe 是一款 AI 音视频转文字与内容整理工具,支持上传音频、视频文件或粘贴 YouTube 链接,自动生成转写文本、摘要、思维导图和关键问题,并支持多格式导出,适合会议记录、课程学习、访谈整理和内容创作复盘。
- 4060次使用
-
- 剧云
- 剧云是专业中文剧本创作平台,安全稳定运行十余年,集成AI编剧、剧本医生审核、人物小传、剧情关系图、大纲编写、多人协作、Word导入导出、版权管控功能,数据安全防护,轻松高效创作剧本。
- 4246次使用
-
- 万象有声
- 万象有声,一个专为有声创作者打造的新一代智能有声内容创作平台。平台提供专业的智能拆章、智能画本编辑、AI配音、AI生成音效、后期制作、智能对轨、智能审听等有声创作全流程工具,可以帮助创作者高效、低成本创作出引人入胜的有声作品。立即体验,让有声书制作更简单!
- 4221次使用

