Go语言技术文章

  • golang函数如何通过管道共享数据
    golang函数如何通过管道共享数据
    管道是Go语言中用于在Goroutine之间共享数据的通信机制。可以通过make(chantype)函数创建管道,它有读写端。以下示例函数通过管道共享数据,将两个数字相加并通过管道发送结果:创建两个管道,一个用于输入数字,一个用于输出结果。启动一个Goroutine运行addNumbers函数。将数字发送到输入管道。关闭输入管道。从输出管道接收并打印结果。
    Golang · Go教程   |  2年前  |   管道 共享数据 491浏览 收藏
  • golang函数式编程中如何避免副作用?
    golang函数式编程中如何避免副作用?
    函数式编程中避免副作用至关重要,以确保程序的纯净性。在Go语言中,通过以下技巧避免副作用:使用不可变数据类型使用函数作为参数传递数据使用并发安全数据结构使用错误处理代替panic或fatal避免打印到控制台
    Golang · Go教程   |  2年前  |   函数式编程 副作用 491浏览 收藏
  • 如何在连接关闭时终止正在运行的查询
    如何在连接关闭时终止正在运行的查询
    我们在后端使用https://github.com/go-gorm/gorm/ORM和脚本来连接到我们的PostgreSQL数据库。有时,当脚本正在进行时,我们会通过在本地按Ctrl+C或在生产中终止pod/进程来手动终止作业。我们在所有脚本中确实有一个deferDB.Close(),我还添加了处理SIGINT/SIGTERM信号以在终止时执行DB.Close()。问题是,即使关闭连接后,任何已经运行的现有查询也不会被终止并继续占用数据库资源。有没有办法在直接从g
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • 如何用数据动态填充结构体?
    如何用数据动态填充结构体?
    在我用golang编写的grpc服务中,我有这样的rpc方法,名为createcity。正如您所看到的,在这个方法中,我想在数据库中创建一条新记录,并返回有关该记录的所有信息作为响应。func(server*server)createcity(contextcontext.context,request*proto.createcityrequest)(*proto.createcityresponse,error){city:=proto.city
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • go 运行 ./cmd/version/main.go 时 golang gocv 错误
    go 运行 ./cmd/version/main.go 时 golang gocv 错误
    我是golang新手,安装gocv时遇到一些问题。我不知道天气,但无能为力我使用manjarolinux版本5.19.3,当前go-版本是1.14.2,最后但并非最不重要的gccgo版本10.1.0(amd64)。我按照https://gocv.io/getting-started/linux/上的描述安装了gocvgoget-u-dgocv.io/x/gocvcd$gopath/pkg/mod/gocv.io/makeinstall如果工作
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • 如何在 Postgres 中向 json 字段数组添加元素
    如何在 Postgres 中向 json 字段数组添加元素
    我正在尝试将数据附加到属于postgres中json字段的数组。在使用pgadmin时,我知道以下查询有效。〜updatelessonsetdata=jsonb_set(data,'{pages,999999}','{"pagenum":2,"pagetype":"voc"}',true)whereid=2;我只是想通过用go编写的其余api让上述查询工作。我收到一条错误消息“pq:json类型的输入语法无效”。我的代码如下~
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • golang函数堆栈内存消耗优化
    golang函数堆栈内存消耗优化
    函数堆栈内存消耗优化策略包括:减少局部变量数量。使用栈内存逃逸分析,将不逃逸堆栈帧的局部变量分配到堆上。使用基于堆栈的结构,允许在堆栈上存储数据。
    Golang · Go教程   |  2年前  |   函数堆栈 内存消耗优化 491浏览 收藏
  • 如何处理可以增长而不会阻塞的队列
    如何处理可以增长而不会阻塞的队列
    如果队列可以从处理函数本身增长,我试图了解如何在go中处理队列。请参阅下面的代码。在此伪代码中,我想将正在创建的处理程序数量限制为10个。因此,我创建了10个处理队列的处理程序。然后我用一个url开始队列。我的问题是,根据文档,通道的sender将阻塞,直到接收器收到数据。在下面的代码中,每个进程都是一个处理新url的接收者。然而,很容易看出,如果一个进程向队列发送11个链接,它将阻塞,直到所有接收者处理完这些新链接为止。如果这些接收器每个都有1个链接,那么它们
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • 调用没有类型的类型函数
    调用没有类型的类型函数
    我创建了某种类型的函数。一旦我做到了,我就可以按照预期的方式调用它,当我想调用它而不声明函数类型的变量时,问题就来了。这是一个可以澄清一切的示例:typeMyStructstruct{number1intnumber2int}func(input*MyStruct)declareValues(val1int,val2int){input.number1=val1input.number2=val2}func(inputMy
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • Golang函数库的安装和使用指南
    Golang函数库的安装和使用指南
    Golang函数库安装和使用指南安装函数库:通过goget命令下载并安装函数库。导入函数库:使用import语句导入函数库,使其可被程序使用。实战案例:使用gorilla/mux函数库创建RESTAPI,包括定义路由、处理函数和启动服务器。
    Golang · Go教程   |  2年前  |   golang 函数库 491浏览 收藏
  • 如何从golang json文件中删除一部分
    如何从golang json文件中删除一部分
    假设我有这样一个json文件。我想根据用户的选择删除窗口、图像或文本字段之一,并将其​​余内容打印到不同的文件。{"window":{"title":"samplekonfabulatorwidget","name":"main_window","width":500,"height":500},"image":{"src":"images/sun.png","name":"sun1","hoffse
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • Go静态语言特性分析
    Go静态语言特性分析
    Go语言是一门静态类型的编译语言,具有以下特性:类型系统:基于结构化类型,包括基本类型、数组、切片、结构、接口、函数和通道类型。变量类型声明:必须显式声明,不能更改类型。表达式类型返回:编译器检查表达式返回类型,否则报错。编译和解释:编译器编译程序并检查类型正确性,解释器将中间表示解释为机器码。类型断言:使用switch语句在运行时检查和转换变量类型。
    Golang · Go教程   |  2年前  |   Go 静态语言特性 491浏览 收藏
  • 如何使用 Go 运行时将 exe 文件复制到 App Engine (flex)?
    如何使用 Go 运行时将 exe 文件复制到 App Engine (flex)?
    我的Go应用程序需要使用独立的可执行文件,我想在部署到GAEFlex环境期间将其与“gcloudappdeploy”命令一起复制。我尝试在部署期间将exe保留在其他go文件所在的文件夹中,但这似乎并未将exe带到GAEflex我尝试在Dockerfile中使用这两行,并更改了app.yaml中的“runtime:custom”,但这也没有解决,因为我似乎还缺少一些东西。来自gcr.io/google-appengine/golang添加tes
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • 读取位于密码保护 zip 文件中的 CSV 文件
    读取位于密码保护 zip 文件中的 CSV 文件
    我有这样的链接:https://storage.googleapis.com/data/test_file.csv.zip内容是带有密码的受保护zip中的一个csv文件。如何从csv读取数据?我已经尝试过这个但它的错误funcReadCSVZIPFromURL(fileURLstring)(data[][]string,errerror){resp,err:=http.Get(fileURL)iferr!=nil{retu
    Golang · Go问答   |  2年前  |   491浏览 收藏
  • 总结Go语言中常用包的导入方式
    总结Go语言中常用包的导入方式
    导包大全:Go语言中常用包引入方法总结在Go语言中,包的引入是非常重要的一部分。通过引入不同的包,我们可以实现各种功能,提高代码复用性和可维护性。在本文中,我们将总结一些常用的包引入方法,包括标准库中的包和第三方库的引入方法,并提供详细的代码示例。1.标准库中的包引入方法1.1fmt包在Go语言中,fmt包是用于格式化输入输出的标准包,我们可以通过以下方
    Golang · Go教程   |  2年前  |   包管理 常用包 引入方法 491浏览 收藏
查看更多
课程推荐
  • 前端进阶之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推荐
  • PubMedQA数据集详解:生物医学问答基准、功能与应用指南
    PubMedQA
    深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
    283次使用
  • H2O EvalGPT:开源LLM大模型评估与排行榜工具
    H2O EvalGPT
    H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
    337次使用
  • LMArena是什么?伯克利AI模型评估平台使用指南与功能解析
    LMArena
    LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
    334次使用
  • 斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解
    HELM
    深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
    302次使用
  • MMBench详解:多模态大模型基准测试、功能特点与使用指南
    MMBench
    MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
    124次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码