代码示例: 004.struct类型 004.struct类型 1 type声明新类型 1 type声明新类型 1.1 type testInt func(int) bool // 声明了一个函数类型 1.1 type testInt func(int) bool // 声明了一个函数类型 1.2
原创
2021-07-26 14:16:52
247阅读
3.3、Golangmapkey:value键值对的数据结构容器语法格式go//声明变量,默认是nilvarmap_variablemapkey_data_typevalue_data_type//使用make函数varmap_variable=make(mapkey_data_typevalue_data_type)示例gopackagemainimport("fmt")funcmain(){/
数组:相同数据类型的一组数据的集合数组长度不能修改数组可以通过下标(索引)访问元素数组默认初始化为零值定义govarvariable_nameSIZEvariable_type示例gopackagemainimport"fmt"funcmain(){vararr12stringvararr23intfmt.Printf("arr1:%v\n",arr1)//arr1:fmt.Printf("arr
3.4、Golang函数Go语言函数特性1.函数分类:普通函数匿名函数方法2.函数不能重载,即不允许函数同名3.函数不能嵌套函数,但可以嵌套匿名函数4.函数可以赋值给变量5.函数可以作为参数传递给另一个函数6.函数的返回值可以是一个函数7.函数传参传递是参数的副本8.函数参数可以没有名称函数定义gofuncfunction_name(parameterlist)return_type{//函数体}
3.5、Golang指针指针取地址:&取值:指针地址:每一个变量都有一个地址,地址代表变量在内存中的位置Go语言中的值类型(int、float、bool、string、array、struct)对应的指针类型(int、int64、string)指针变量定义语法go//指针变量名指针类型varvar_namevar_type示例gopackagemainimport"fmt"funcmain(){/
在这里我们会介绍两种部署方式:直接构建镜像分阶段构建镜像方式一:直接构建镜像 首先在我们的项目根目录下编写Dockerfile文件,文件名称就是Dockerfile,没有后缀名嗷!! 具体请参考如下内容:FROM golang:alpine
# 为我们的镜像设置必要的环境变量
# GO111MODULE
代码示例:
package main
import (
"fmt"
"time"
"golang.org/x/net/context"
)
func main() {
// ctx, cancelFunc := context.WithDeadline(context.Background(), time.Now().Add(time.Second*
原创
2021-07-22 11:01:59
380阅读
最佳实践 最佳实践 1 包管理 1 包管理 1.1 使用包管理对Golang项目进行管理,如:godep/vendor等工具 1.1 使用包管理对Golang项目进行管理,如:godep/vendor等工具 1.2 main/init函数使用,init函数参考python 1.2 main/init
原创
2021-07-26 14:11:34
732阅读
3.7、Golang接口interfacego语言中的接口,是一种新的类型定义,它把所有的具有共性的方法定义在一起,任何其他类型制药实现了这些方法就是实现了这个接口语法go//定义接口typeinterface_nameinterface{method_namereturn_type...}//定义结构体typestruct_namestruct{}//实现接口方法func(struct_name
本文汇总一些工程中使用到的查询数据表的代码示例。由于是代码片段,不一定保证完整。但其思想可以参考。问题提出工程中经常要使用到数据表(工作多年,不可避免沦为了CRUD工具人),打交道最多的是查询,对于插入更新接触比较少,由于所涉及的数据表是生产环境的,所以不敢越雷池半步。golang的sql包虽然没有包含数据库驱动,但在语言级别统一了接口,所以使用上还是有一定的便利之处。之前用golang写的一个内
导读最近写一个程序,接口返回的数据是js格式的,需要通过golang来解析js,所以下面这篇文章主要给大家介绍了关于如何在Golang中运行JavaScript的相关资料,需要的朋友可以参考下我们知道,在 Python 里面,如果你要运行一段 JavaScript,你可以使用execJS这种第三方库。那么在 Golang 里面,你想运行 JavaScript 的时候又应该怎么办呢?最近我发现一个使
原文链接如何在 Golang 中使用 Redis 订阅/发布订阅,取消订阅和发布实现了发布/订阅消息范式(引自wikipedia),发送者(发布者)不是计划发送消息给特定的接收者(订阅者)。而是发布的消息分到不同的频道,不需要知道什么样的订阅者订阅。订阅者对一个或多个频道感兴趣,只需接收感兴趣的消息,不需要知道什么样的发布者发布的。这种发布者和订阅者的解耦合可以带来更大的扩展性和更加动态的网络拓扑
1S = 1000ms 1ms = 1000us1us = 1000ns并行: 借助多核 cpu 实现。 (真 并行)并发: 宏观:用户体验上,程序在并行执行。 微观:多个计划任务,顺序执行。在飞快的切换。轮换使用 cpu 时间轮片。 【假 并行】进程并发: 程序:编译成功得到的二进制文件。 占用 磁盘空间。 死的 1 1 进程:运行起来程序。 占用系统资源。(内存) 活的 N 1进程状态: 初
如何在Golang中使用MongoDB的事务一、Mongo中的事务1.Mongo新特性2.基于会话的事务3.事务相关命令二、搭建Mongo副本集1. 安装MongoDB2. 环境变量配置3. 创建副本集目录3.1 创建主节点相关目录3.2 创建副节点相关目录3.3 创建仲裁节点相关目录4. 创建副本集认证的key文件5 修改MongoDB配置文件5.1 主节点配置文件5.2 副节点配置文件5.3
WebSocket是什么WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。其最大特点之一就是:服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话。开发前期准备(默认已经安装了golang语言环境)我这里通过两个库来实现整个WebSocket的开发,这两个库分别是gin和gorilla/websocket。这里有两种方法来获取这两个库,其一就是
参考资料: http://m.yl1001.com/group_article/3231471449287668.htm http://tieba.baidu.com/p/3542454435?share=9105&fr=share http://m.blog.csdn.net/article/de
原创
2021-08-08 17:48:40
345阅读
切片:可变长度的数组自动扩容切片声明和数组类似,区别在于不添加长度govaridentifiertype切片是引用类型,可以使用make函数创建切片go//len是数组长度,也是切片的初始长度varslicetype=make(type,len)//简写slice:=make(type,len)//指定容量slice:=make(type,len,capacity)示例gopackagemaini
gse是什么?Go高性能多语言NLP和分词库, 支持英文、中文、日文等, 支持接入 elasticsearch 和 bleve Gse是结巴分词(jieba)的golang实现,并尝试添加NLP功能和更多属性特征支持普通、搜索引擎、全模式、精确模式和 HMM 模式多种分词模式支持自定义词典、embed 词典、词性标注、停用词、整理分析分词多语言支持: 英文, 中文, 日文等支持繁体字NLP 和 T