Go问答技术文章

  • 如何在Go中使用协程?
    如何在Go中使用协程?
    随着互联网技术的发展,对于高效的多任务处理有着越来越高的要求。在Go语言中,协程是一种非常重要的特性,可以很好地解决这个问题。本文将介绍如何在Go中使用协程来实现并发编程。一、什么是协程协程是一种轻量级的线程,也被称为用户态线程。相对于传统的多线程编程,协程的优点在于更加轻量级,占用系统资源更少,切换上下文的速度更快,不需要像多线程编程一样处理锁等线程安全问
    Golang · Go问答   |  3年前  |   协程、Go语言、并发 360浏览 收藏
  • 如何提高 Golang 的编译速度?
    如何提高 Golang 的编译速度?
    问题内容 我正在尝试找到一种方法来更快地编译 Go 程序。目前大约是 30 秒,这使得处理该项目的速度很慢。 当我运行时go build -v,我发现大部分时间都花在编译[go-sqlite3](https://github.com/matt
    Golang · Go问答   |  3年前  |   golang · golang 360浏览 收藏
  • GOMAXPROCS 默认值是多少?
    GOMAXPROCS 默认值是多少?
    问题内容 不设置同名环境变量时,是否保证GOMAXPROCS设置为1? 此代码显示值: package main import ( "runtime" "fmt" ) func getGOMAXPROCS() int { return runtime.GOMAXPROCS(0) } func main()
    Golang · Go问答   |  3年前  |   golang · golang 360浏览 收藏
  • 在 Go 中计算公式
    在 Go 中计算公式
    问题内容 使用 Go (golang) 我想使用一个带有公式的字符串并使用预定义的值对其进行评估。这是使用pythonparser模块的一种方法: x = 8 code = parser.expr("(x + 2) / 10").compile() print eval(code) # p
    Golang · Go问答   |  3年前  |   golang · golang 360浏览 收藏
  • 将 YAML 解组到结构中
    将 YAML 解组到结构中
    问题内容 我正在尝试将 YAML 数据解析为字符串: package main import ( "fmt" "log" "gopkg.in/yaml.v2" ) type Config struct { foo_bar string } func FailOnError(err error, msg string) {
    Golang · Go问答   |  3年前  |   golang · golang 360浏览 收藏
  • 无法访问 [] 接口内映射中的键
    无法访问 [] 接口内映射中的键
    问题内容 示例代码: package main import "fmt" func main() { example_container := []interface{}{ map[string]string{ "name": "bob", "id": "1", },
    Golang · Go问答   |  3年前  |   golang · golang 360浏览 收藏
  • golang 在这段代码中未检测到deadlock
    golang 在这段代码中未检测到deadlock
    问题内容 RT, 通常情况下,你在main函数写如下代码执行会:fatal error: all goroutines are asleep - deadlock! func main() { //doen := make(chan bool) var s chan bool s <- false } 但是我在main中,这么写却一直block,
    Golang · Go问答   |  3年前  |   go · 死锁 · golang 360浏览 收藏
  • Linux 下有什么命令行工具以时序显示 CPU 占用率?
    Linux 下有什么命令行工具以时序显示 CPU 占用率?
    问题内容Linux 下有什么 CMD 工具以时序显示 CPU 占用率?比如 glances、htop 这种工具就只能显示当前时刻的 CPU 占用率!而 sar 工具只能是一行一行,而不是折线图所以有什么工具可以两者结合?想
    Golang · Go问答   |  3年前  |   go · Linux · python · C++ · 后端 · golang 360浏览 收藏
  • Go slog 的 LogValuer 什么时候值得用:避免热路径重复计算日志字段
    Go slog 的 LogValuer 什么时候值得用:避免热路径重复计算日志字段
    slog.LogValuer 适合把昂贵或需要脱敏的日志值延迟到 Handler 真正处理时再计算,但它不是所有日志字段的默认包装。本文用 LogAttrs、Handler.Enabled 和 LogValue 的真实调用链说明何时值得使用,以及递归解析和敏感字段的边界。
    Golang · Go问答   |  1天前  |   日志 · 标准库 · 性能优化 · slog · Go问答 · 性能 Go 结构化日志 slog LogValuer LogAttrs 359浏览 收藏
  • Go 并发模型为什么比线程更安全
    Go 并发模型为什么比线程更安全
    Go 并发鼓励通信而非共享内存。核心结论channel 降低锁使用减少并发错误代码更易维护详细分析Go 通过 CSP 模型减少数据竞争。提高并发程序稳定性。常见问题一定要用 channel 吗?不是,但推荐优先考虑。
    Golang · Go问答   |  6个月前  |   channel 并发安全 Go并发模型 359浏览 收藏
  • golang使用cgo调用c库时未检测到sanitizer-leak
    golang使用cgo调用c库时未检测到sanitizer-leak
    摘要之前我使用过clang-3.8.1,但在使用addresssanitizer时,sanitizer崩溃了。而且leaksanitizer根本不起作用。然后我尝试使用clang-llvm-10.0,addresssanitizer可以检测到地址问题并正常工作。但是golang使用cgo调用c时无法检测到泄漏问题当golang使用cgo时是否可以使用leak-sanitizer来检测c/c++库中的内存泄漏问题?示例cgo-sanitizer.go:按预期检测到地址问题。
    Golang · Go问答   |  2年前  |   359浏览 收藏
  • 运行在 localhost:8080 上的服务器从运行在 9090 上的前端获取 CORS
    运行在 localhost:8080 上的服务器从运行在 9090 上的前端获取 CORS
    我有一个api服务器(gin-gonic)在localhost:8080上运行。所有典型的cors标头均已设置用于调试:当我尝试使用简单的前端(swagger-ui)测试api时,我收到cors错误。(swagger正在localhost:9090上运行)当所有内容都在同一域上运行时,它才有效。c.Writer.Header().Set("Access-Control-Allow-Origin","*")c.Writer.Header().Set("Access
    Golang · Go问答   |  2年前  |   359浏览 收藏
  • Go 与 Python 和其他语言中 Windows 上命名管道的行为
    Go 与 Python 和其他语言中 Windows 上命名管道的行为
    我正在尝试使用soundpad的api,它是通过命名管道公开的。在python中,调用api就像简单importwin32filehandle=win32file.createfile(r'\\.\pipe\sp_remote_control',win32file.generic_read|win32file.generic_write,0,none,win32file.open_existing,0,none
    Golang · Go问答   |  2年前  |   359浏览 收藏
  • Go,使用 GIN 更新 API 方法
    Go,使用 GIN 更新 API 方法
    我是golang新手。我正在研究和学习gin来构建restfulapi。我在处理updateginapi方法时遇到了困难。具体来说,就是存储“email”、“name”字段的输入数据的部分。问题是:如何修改jsonmap[string]接口数据才能将数据保存进去。希望大家帮忙。非常感谢。func(r*UserRepo)UpdateInfoUser(iduint64)(*entity.User,error){varuserentity.User
    Golang · Go问答   |  2年前  |   359浏览 收藏
  • 如何使用 ragel correclty 实现正则表达式 /cat?(\b|$)/ ?
    如何使用 ragel correclty 实现正则表达式 /cat?(\b|$)/ ?
    我想加速用go编写的程序,并使用ragel将正则表达式转换为有限状态机。在转换类似于/cat[s]?(\b|$)/的正则表达式时,我无法弄清楚如何正确匹配输入结尾(它匹配单词边框或输入结尾),因此我做了以下解决方法:packagemainimport("strings""fmt""unicode")funcmatch(data[]byte)bool{data=[]byte(strings.tolower(string(data)))
    Golang · Go问答   |  2年前  |   359浏览 收藏
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
查看更多
AI推荐
  • ljg-skills -
    ljg-skills
    ljg-skills 是李继刚开源的 AI 技能与提示词集合,面向大模型使用者整理了一批可复用的 prompt、角色设定和任务技能模板,适合用于学习提示词设计、搭建个人 AI 工作流和沉淀团队常用智能体能力。
    5372次使用
  • MELO音乐 - AI 音乐生成平台,支持多模态创作能力
    MELO音乐
    MELO音乐是一站式AI视频与音乐制作助手,对标suno, udio的高品质体验。提供伴奏生成、原创写词、无损导出、哼唱识曲、混音变声等全套音频与短视频编辑工具。无论是流行Kpop、电音说唱、民谣古风、摇滚儿歌还是商用轻音乐,MELO为你免费谱曲,轻松做同款!
    4885次使用
  • UniScribe - AI 免费在线音视频转文字平台
    UniScribe
    UniScribe 是一款 AI 音视频转文字与内容整理工具,支持上传音频、视频文件或粘贴 YouTube 链接,自动生成转写文本、摘要、思维导图和关键问题,并支持多格式导出,适合会议记录、课程学习、访谈整理和内容创作复盘。
    4827次使用
  • 剧云 - 免费 AI 智能中文剧本创作平台
    剧云
    剧云是专业中文剧本创作平台,安全稳定运行十余年,集成AI编剧、剧本医生审核、人物小传、剧情关系图、大纲编写、多人协作、Word导入导出、版权管控功能,数据安全防护,轻松高效创作剧本。
    5078次使用
  • 万象有声 - AI 一站式有声内容创作平台
    万象有声
    万象有声,一个专为有声创作者打造的新一代智能有声内容创作平台。平台提供专业的智能拆章、智能画本编辑、AI配音、AI生成音效、后期制作、智能对轨、智能审听等有声创作全流程工具,可以帮助创作者高效、低成本创作出引人入胜的有声作品。立即体验,让有声书制作更简单!
    5037次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码