fmt
  • 2024-07-02go中实现日志级别与切割,日志配置热生效,pprof的技术解析
    引言在线上分布式系统和微服务架构中,日志记录是排查问题、调试程序和监控服务运行状态的重要手段。合理设置日志级别,可以帮助开发和运维人员有效地获取所需信息。然而,在实际运行中,常常需要在不重启服务的情况下动态调整日志级别,以适应不同的调试需求和运行环境。本文基于g
  • 2024-07-02day13 Goroutine 协程
    了解计算机原理进程:计算机资源分配单位线程:cpu处理单位协程:以特殊机制或者函数实现高并发,又称轻量级线程了解GoroutineGoGoroutine,go语言中的协程,实现并发。关键字go初始大小4k,随着程序执行自动增长和删除实现多线程并发执行packagemainimport"fmt"fu
  • 2024-07-01day01 常量和变量
    go常量与变量拓展常量packagemainimport( "fmt" "reflect")varc3intfuncmain(){ //变量定义公式:var变量名数据类型=值 //1.go语言中定义变量:通过var关键字定义变量,后面跟上变量的类型 varnamestring="张阿三" varageint=20 fmt.Pri
  • 2024-07-01【建议收藏】Go语言关键知识点总结
    容器数组和切片在Go语言中,数组和切片是两个基本的数据结构,用于存储和操作一组元素。它们有一些相似之处,但也有许多不同之处。下面我们详细介绍数组和切片的特点、用法以及它们之间的区别。数组数组是固定长度的序列,存储相同类型的元素。数组的长度在定义时就固定下来,不
  • 2024-06-30Golang文件操作
    文件是数据源(保存数据的地方)的一种,word文档,txt文件,excel文件...都是文件。文件最主要的作用就是保存数据,它既可以保存一张图片,也可以保持视频,声音...os.file封装了所有对文件的操作,且file是一个结构体: 打开和关闭文件1.打开文件,用于读取: 传入的是一个字符
  • 2024-06-2110 个提高生产力的 Go 小技巧
    10个提高生产力的Go小技巧原创 陈煎鱼 脑子进煎鱼了 2024-06-2108:42 广东 听全文最近PhuongLe大佬针对日常开发Go项目时,总结了一些好用的Go小技巧。看了后,感觉对于刚入门Go的同学有一定的学习价值。可以挑好的学。应用到自己项目里。以下内容分享给大
  • 2024-06-21golang openai GPT4o 示例代码
    packagemainimport( "context" "errors" "fmt" "io" "log" "os" "github.com/joho/godotenv" openai"github.com/sashabaranov/go-openai")funcmain(){ err:=godoten
  • 2024-06-19【golang学习之旅】Go程序快速开始 & Go程序开发的基本注意事项
    系列文章【golang学习之旅】使用VScode安装配置Go开发环境【golang学习之旅】报错:adeclaredbutnotused【golang学习之旅】Go的基本数据类型【golang学习之旅】深入理解字符串string数据类型【golang学习之旅】gomodtidy【golang学习之旅】记录一次paniccase
  • 2024-06-18C++数据格式化3 - 格式化时间区间(使用时长)
    1.关键词2.strfmt.h3.strfmt.cpp4.测试代码5.运行结果6.源码地址1.关键词关键字:C++数据格式化字符串处理std::string时间区间跨平台应用场景:想对一个时间区间(如用时:2000s)进行格式化,转化成人类易读的时分秒的格式。2.strfmt.h#pragmaonce#include
  • 2024-06-18C++数据格式化2 - 将文件大小转换为人类易读的格式
    1.关键词2.strfmt.h3.strfmt.cpp4.测试代码5.运行结果6.源码地址1.关键词C++数据格式化字符串处理std::string文件大小跨平台2.strfmt.h#pragmaonce#include<string>#include<cstdint>#include<sstream>#include<iomanip>namespacecutl{
  • 2024-06-18C++数据格式化1 - uint转换成字符串 & double转换成字符串
    1.关键词2.strfmt.h3.strfmt.cpp4.测试代码5.运行结果6.源码地址1.关键词C++数据格式化字符串处理std::stringintdouble跨平台2.strfmt.h#pragmaonce#include<string>#include<cstdint>#include<sstream>#include<iomanip>namespacecutl{
  • 2024-06-18Golang语言基础超详细教程&备忘录
    作者的话:这篇文章是之前刚从Java转到Go,学习时编写的,力求全面且详细。本文是基础内容,适合初学者,也适合老手用来当备忘录。和网上其他文档不同的是,我陆陆续续将很多小的知识点也补进来了,后续也会继续补充。这篇文章开始是我写在本机,然后又改写到自己的个人博客,现在有誊写到CSDN,
  • 2024-06-18go tcp 同步 请求
      客户端服务端典型的同步请求-响应模型简单的Go示例,展示了如何实现您描述的同步请求-响应模型。客户端会发送一个包,然后等待接收服务器的响应。服务器接收包后处理数据,然后发送处理完成的消息。客户端接收到响应后,再次发送下一个包 服务端:packagemainimport(
  • 2024-06-17Go - scan
     funcgetUserInput(){fmt.Print("Pleasegivemeyourname:")varnamestring//Scanscanstextreadfromstandardinput,storingsuccessivespace-separatedvaluesintosuccessivearguments.//Newlinescountasspace.Itre
  • 2024-06-17go语言之异步并发
    1.首先讲一下匿名函数和闭包的概念,(仔细看,其实Python代码里很好看,只不过Go语言代码有点多,看起来很复杂的感觉)packagemainimport"fmt"funcmain(){/*注意:匿名函数和闭包往往是一起出现的*///不带参的匿名函数func(){fmt.Printf("不带参数的匿名
  • 2024-06-16【四种语言一网打尽(C\C++\Python\Golang)】L1-012 计算指数
    L1-012计算指数真的没骗你,这道才是简单题——对任意给定的不超过10的正整数n,要求你输出2^n。不难吧?输入格式:输入在一行中给出一个不超过10的正整数n。输出格式:在一行中按照格式2^n=计算结果输出2^n的值。输入样例:5输出样例:2^5=32C语言参考
  • 2024-06-16Go Goroutine 究竟可以开多少?(详细介绍)
    GoGoroutine究竟可以开多少?Go语言因其高效的并发处理能力而备受欢迎,而Goroutine则是Go语言实现并发编程的核心。Goroutine比传统的线程更加轻量,允许开发者轻松地处理大量并发任务。那么,Go语言中的Goroutine究竟可以开多少呢?在回答这个问题之前,我们需要先了解两个关键问题
  • 2024-06-16ants:强大的高性能与低成本 Go 协程池
    ants:强大的高性能与低成本Go协程池原创 K8sCat 源自开发者 2024-06-1611:28 广东 听全文源自开发者专注于提供关于Go语言的实用教程、案例分析、最新趋势,以及云原生技术的深度解析和实践经验分享。256篇原创内容公众号在开发高并发程序时,管理并发
  • 2024-06-15【go】【grpc】【interceptor】
    @目录写在前面客户端unaryinterceptor服务器nuaryinterceptor客户端streaminterceptor服务器streaminterceptor服务器多unayinterceptor具体例子服务器unaryinterceptor多拦截器参考资料基础/标准库/第三方库golang导航编程规范算法|面试项目写在前面相关博文个
  • 2024-06-15Golang 百题(实战快速掌握语法)_1
    整形转字符串类型实验介绍本实验将展示三种方法来实现整形类型转字符串类型。知识点strconvfmtItoa函数代码实例Go语言中strconv包的itoa函数输入一个int类型,返回转换后的字符串。下面是一个例子。packagemainimport("fmt""strconv")funcmai
  • 2024-06-14【redis】互斥锁
    1.创建一个Go程序来实现基于Redis的互斥锁。这个程序将尝试获取一个锁,成功后对文件进行操作,并且在完成操作后释放锁packagemainimport("context""fmt""github.com/go-redis/redis/v8""os""time")varctx=context.Background()funcma
  • 2024-06-1465道Go基础高频题整理(附答案背诵)
    说明一下Golang中make和new的区别?好的,关于make和new在Go语言中的区别,我来解释一下。new函数的作用:new(T)函数会为T类型的新项分配零值内存,并返回其地址,即一个*T类型的值(指针)。这种方法适用于各种类型,包括基本类型如int、float、bool等,以及数组、结构
  • 2024-06-14Go黑帽子|TCP扫描器和代理
    TCP扫描器在worker函数中通过net.Dial测试端口连通,并把worker放到goroutine中运行,port作为管道在主程序和携程中传递扫描信息packagemainimport( "fmt" "net" "sort")funcworker(portschanint,resultschanint){ forp:=rangeports{ address:=fmt.Spr
  • 2024-06-13Go - semaphore
             packagemainimport("context""fmt""os""strconv""time""golang.org/x/sync/semaphore")funcworker(nint)int{square:=n*n
  • 2024-06-12Zgo - Writing to a file
     packagemainimport("bufio""fmt""io""os")funcmain(){buffer:=[]byte("Datatowrite\n")f1,err:=os.Create("f1.txt")iferr!=nil{fmt.Pri