镜像surface go2 go
Go 语言为什么不支持并发读写 map?
大家好,我是 frank ,「 Golang 语言开发栈」公众号作者。 01 介绍 在 Go 语言项目开发中,我们经常会使用哈希表 map,它的时间复杂度是 O(1),Go 语言中的 map 使用开放寻址法避免哈希碰撞。 Go 语言中的 map 并非原子操作,不支持并发读写操作。 Go 官方认为 m ......
Go标准库:Go template用法详解
本文只介绍template的语法和用法,关于template包的函数、方法、template的结构和原理,见:深入剖析Go template。 入门示例 以下为test.html文件的内容,里面使用了一个template语法{{.}}。 <!DOCTYPE html> <html> <head> < ......
2024-01-13:用go语言,现在有一个打怪类型的游戏,这个游戏是这样的,你有n个技能, 每一个技能会有一个伤害, 同时若怪物小于等于一定的血量,则该技能可能造成双倍伤害, 每一个技能最多只能释放
2024-01-13:用go语言,现在有一个打怪类型的游戏,这个游戏是这样的,你有n个技能, 每一个技能会有一个伤害, 同时若怪物小于等于一定的血量,则该技能可能造成双倍伤害, 每一个技能最多只能释放一次,已知怪物有m点血量。 现在想问你最少用几个技能能消灭掉他(血量小于等于0)。 技能的数量是n, ......
我开源了一个 Go 学习仓库
这个学习仓库中核心包含《The Go Programing Language》一至八章讲解与分析,同时同步收录往期公众号和博客的精彩文章,更有电子书和建立模板供大家参考学习。 ......
go的并发梳理
Golang不可不知的7个并发概念 原创 俞凡 DeepNoMind DeepNoMind 2024-01-06 13:10 发表于上海 3人听过 并发性支持是Golang最重要的原生特性之一,本文介绍了Golang中和并发性相关的7个概念。原文: Golang: 7 must-know concu ......
go语言多态中的类型断言
类型断言案例 package main import ( "fmt" ) type Usb interface{ Connect() DisConnect() } type Phone struct{ Name string } /* * Phone实现了Usb 接口(是指实现了Usb接口的所有方法 ......
Go语言defer的延迟执行机制
1 题目(单选题) 如下Go语言程序的输出结果是() package main import "fmt" func f1(name string) string { fmt.Println("in f1", name) return name } func f2(name string) strin ......
Go函数的定义个细节梳理
func 函数名(参数列表{参数名1 类型,参数名2,类型})(返回值列表{返回值名1 类型,返回值名2 类型}){ 方法体 } 细节梳理: 函数的形参列表可以是多个,返回值列表也可以是多个。 形参列表和返回值列表的数据类型可以是值类型和引用类型。 函数的命名遵循标识符命名规范,首字母不能是数字,首 ......
YAML示例:nginx使用configmap配置并开启镜像
# use nginx to be a proxy, mirror each request to other services, 10.96.2.58 send back the reponse to user client. m1 and m2 just mirror the request, ......
go使用jwt创建token并验证token的有效性
一、概述 Go使用jwt创建token,验证登录用户的合法性 导入jwt包 go get github.com/dgrijalva/jwt-go 二、代码示例 1.创建token及解析token package token import ( "fmt" "go_workspace/entity" " ......
go-carbon v2.3.5 发布,轻量级、语义化、对开发者友好的 golang 时间处理库
carbon 是一个轻量级、语义化、对开发者友好的 golang 时间处理库,支持链式调用。 目前已被 awesome-go 收录,如果您觉得不错,请给个 star 吧 github.com/golang-module/carbon gitee.com/golang-module/carbon 安装 ......
从错误中学习: 了解Go编程的6个坏习惯
从错误中学习: 了解Go编程的6个坏习惯 原创 俞凡 DeepNoMind DeepNoMind 2024-01-07 10:35 发表于上海 Go编程的某些实践容易被误用或忽视,了解这些特性的特点和陷阱,可以帮助我们编写更好的代码。原文: 5+ BAD Practices In Go: Learn ......
go 实现一个接口
Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。 package main import ( "fmt" ) type Phone interface { call() } type NokiaPhone struct { ......
使用Docker Build构建镜像
使用Docker Build构建镜像 使用Docker Build工具可以按照自己的需求构建镜像,可以方便的部署应用程序。 环境 命令行工具:docker build,该工具随docker一起安装 语法 详细的语法可以阅读官方文档、菜鸟教程,以上文档均有详细教程,我将对其中的常用语法进行介绍,同时 ......
Dockerfile中给镜像添加自行执行
FROM nvidia:py38-torch112-gradioMAINTAINER "chentiao_create"ARG workdir=/home/recognize-anything-mainADD . ${workdir}/WORKDIR ${workdir}EXPOSE 8089RUN ......
Go+Gin+xorm+MySql实现增删改查
一、概述 承接上一篇(ps:原生增删改查),本篇使用xorm实现增删改查。 之所以要使用xrom是因为xrom可以极大的缩小操作数据库的成本。 使用rom之前需要导入响应的包 go get github.com/go-xorm/xorm #安装xorm go get xorm.io/core go ......
Go语言常见错误| 将接口作为返回值
Go语言常见错误| 将接口作为返回值 原创 云原生Go 源自开发者 2024-01-11 07:00 发表于广东 听全文 源自开发者 专注于提供关于Go语言的实用教程、案例分析、最新趋势,以及云原生技术的深度解析和实践经验分享。 69篇原创内容 公众号 在Go语言开发过程中,一个常见的错误是错误地将 ......
go中map使用
前端插件对输出数据有要求 mydata := map[string]interface{}{ "draw": draw, "recordsTotal": num, "recordsFiltered": num, "data": list, } c.JSON(http.StatusOK, mydata ......
2024-01-10:用go语言,给你一个下标从 0 开始的二维整数数组 pairs 其中 pairs[i] = [starti, endi] 如果 pairs 的一个重新排列 满足对每一个下标 i
2024-01-10:用go语言,给你一个下标从 0 开始的二维整数数组 pairs 其中 pairs[i] = [starti, endi] 如果 pairs 的一个重新排列 满足对每一个下标 i ( 1 <= i < pairs.length ) 都有 endi-1 == starti , 那么 ......
docker自建镜像&上装镜像
创建一个文件名称:Dockerfile 内容: FROM openjdk:8-jre #拉取openjdk:8-jre 这个镜像 ADD 1center-1.0.jar app.jar #jar包放到和dockerfile同级 EXPOSE 8761 #端口 ENTRYPOINT ["java"," ......
go的gin框架学习以及初始化---安装篇
1. 编辑器使用 vscode 设置中文,加载go语言相关插件 https://code.visualstudio.com/ 2.下载go运行环境 https://go.dev/dl/ 3.新建项目目录 bin pkg src(项目目录可存放多个项目) 每个项目文件下必须要有 go.mod 文件 4 ......
Skywalking(8.7)安装以及docker镜像打包
Skywalking安装以及docker镜像打包 Skywalking版本:apache-skywalking-apm-es7-8.7.0 ES版本:7.17.2 一.下载Skywalking的安装包 下载地址:Index of /dist/skywalking/8.7.0 (apache.org) ......
Go Gin+MySQL实现增删改查
一、概述 使用Gin框架+MySQL数据库实现增删改查(原生sql) 实现步骤: 1.导入Gin框架 go get -u github.com/gin-gonic/gin 2.引入MySQL驱动 go get -u github.com/go-sql-driver/mysql 3.注册Gin路由 / ......
.NET如何创建Dockerfile文件构建镜像?
创建一个WebApi项目,并且创建一个Dockerfile空文件,添加以下代码,7.0代表的你项目使用的SDK的版本,构建的时候也需要选择好指定的镜像tag FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base WORKDIR /app EXPOSE 80 ......
docker build 构建镜像报错
报错日志 build 报错 failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: write 解决 ......
LiteIDE go 错误: 进程无法启动.
一、概述 使用LiteIDE写go代码在重启项目的时候会遇到(经常性的,感觉这个款ide有点问题) go 错误: 进程无法启动. 二、解决办法 让项目运行出错一次,然后再运行就行了。 例如:你把导入的包注释掉,运行报错。然后解除注释在运行,就正常了。ps:此方法不具有普适性。 ......
【golang】GO之认证与授权
一般公司项目比较多,比较分散,但是对于都是公司的用户来说,用户数据一般是共享的,所以集成统一认证与授权的功能一般就必不可少,这样可以实现一个用户,分配一点权限,能访问公司很多项目. 一般的认证与授权方案有 OAuth、分布式 Session、OpenID 和 JWT 等.目前常用的是OAuth2,其 ......
go 新建一个自定义包
一、概述 在go中新建一个自定义包供其他包使用。 步骤: 1.新建一个目录 2.目录下新建一个xxx.go文件 3.在xxx.go文件中使用package xxx(包名) 4.此时你的包已经新建好了 5.在需要使用上面包的地方导入即可,如:import "xxxx" ps:如果包中的内容需要对外开放 ......
Go语言接口防并发常用方案
Go语言接口防并发常用方案 原创 枫潇潇兮 程序员技术成长之路 2024-01-09 08:30 发表于福建 听全文 Go语言中处理并发的常见策略涉及了并发原语,如互斥锁(sync.Mutex)、读写锁(sync.RWMutex)、通道(channel)以及原子操作(sync/atomic)。接口( ......
electron-vite 安装, 打包下载资源失败,设置国内镜像
由于electron默认打包会从github上下载相关二进制包,众所周知,国内GitHub访问是相当慢的,所以经常会出现下载失败导致打包不成功,这时我们就需要配置国内的镜像源,以解决从GitHub下载慢甚至无法下载的问题。 修改npm配置文件(没有就创建): npm的配置文件为用户根目录下的:~/. ......