E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Golang高性能编程
设计模式这样玩泰简单(
Golang
版)-迭代器模式
场景老板:现在有一个对象拥有一个私有的属性,是一个列表.设计一个方案,在列表指针不暴露出去的情况下让这个列表能被迭代访问你:好的老板,那就使用迭代器模式方案迭代器模式,指的是用对象来封装访问一个列表的行为,其效果与for循环是一样的,但是保护了真正的列表可以不被外界访问,又能访问到列表的真正内容.在Java中我们也很经常用迭代器来做操作,像常用的List,Set,Map都可以通过那个对象创建一个迭
hello_读书就是赚钱
·
2023-11-07 12:38
golang
设计模式
【
Golang
设计模式】工厂、单例、建造者、桥接、命令、迭代器模式
golang
设计模式一、工厂模式1、普通工厂2、抽象工厂简单抽象工厂完全体抽象工厂二、单例模式1、饿汉式2、懒汉式三、建造者模式四、桥接模式五、命令模式六、迭代器模式一、工厂模式//Shape接口typeShapeinterface
小鱼小鱼啊
·
2023-11-07 12:38
设计模式
golang
golang
设计模式
设计模式学习笔记-行为型模式(上)
设计模式
golang
-行为型模式(上)一、责任链模式1.作用意图:避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。
Konan96
·
2023-11-07 12:37
Golang
go
设计模式
Golang
与设计模式-Iterator迭代器模式
一般情况下
Golang
的开发中是不需要使用到的,像Slice跟Array都可以通过for...range...来完成遍历。但不是说一定就用不上哦。
灬倪先森_
·
2023-11-07 12:37
设计模式
Golang开发
设计模式
迭代器模式
Iterator
Golang
《
golang
设计模式》第三部分·行为型模式-04-迭代器模式(Iterator)
文章目录1.概念1.1角色1.2类图2.代码示例2.1需求2.2代码2.3类图1.概念迭代器(Iterator)能够在不暴露聚合体内部表示的情况下,向客户端提供遍历聚合元素的方法。1.1角色InterfaceAggregate(抽象聚合):定义存储、添加、删除聚合元素以及创建迭代器对象的接口ConcreteAggregate(具体聚合):实现抽象聚合类。它的方法可以返回一个具体迭代器的实例Iter
玄德公笔记
·
2023-11-07 12:06
架构设计
golang
设计模式
迭代器模式
Iterator
golang
设计模式——代理模式
代理模式目录代理模式静态代理:动态代理:代理模式的优点:代码实现静态代理代码单元测试GoGenerate实现“动态代理”需求代码单元测试仿照java的jdk动态代理实现go语言动态代理测试静态代理:代理类实现和目标类相同的接口,每个类都单独编辑一个代理类。我们需要在代理类中,将目标类中的所有方法都要重新实现,并且为每个方法都附加相似的代码逻辑。如果要添加方法增强的类不止一个,我们需要对每个类都创建
~庞贝
·
2023-11-07 11:32
设计模式
代理模式
golang
设计模式
Golang
学习之旅------第六章 函数
一、函数的基本介绍1.函数的基本概念为完成某一功能的程序指令(语句)的集合,称为函数。在Go中,函数分为:自定义函数、系统函数。2.函数的基本语法说明:(1).形参列表:表示函数的输入(2).函数中的语句:表示为了实现某一个功能代码块(3).函数可以有返回值,也可以没有3.快速入门案例3.1要求:输入两个数,再输入一个运算符(+,-,*,/),得到结果,用函数完成3.2代码示例:二、包的基本介绍1
bingal2022
·
2023-11-07 09:36
golang
学习
java
知识体系之
Golang
目录1.string字符串1.1.结构1.2.string和[]byte转换2.Slice切片2.1.原理2.2.slice避坑指南2.2.1.母子切片共享2.2.2.切片导致内存泄露2.2.3.遍历slice时修改slice3.Map3.1.底层结构3.2.各种操作底层实现3.2.1.创建map3.2.2.查找key3.2.3.插入/更新key3.2.4.删除key3.2.5.迭代遍历3.3.扩
粪逗er
·
2023-11-07 09:06
Golang读书笔记
知识体系
数据结构
golang
java
golang
socket读写同时_
Golang
是怎么利用 epoll 的
使用
Golang
可以轻松地为每一个TCP连接创建一个协程去服务而不用担心性能问题,这是因为Go内部使用goroutine结合IO多路复用实现了一个“异步”的IO模型,这使得开发者不用过多的关注底层,而只需要按照需求编写上层业务逻辑
潘小光
·
2023-11-07 09:35
golang
socket读写同时
golang
的panic与recover基本使用
packagemainimport("errors""fmt")funcmain(){//panic会使得程序会终止//panicDemo1()//panicDemo2()//fmt.Println(panicDemo3())panicDemo5()fmt.Println("程序正常执行...")}panicDemo1函数测试funcpanicDemo1(){panic("抛出一个异常,碰到了pa
追逐梦想之路_随笔
·
2023-11-07 09:03
golang/java
golang
后端
Golang
关键字使用方法
1.return***:与其他语言相比,Go函数支持返回多个值func函数名(形参列表)(返回值类型列表){语句return返回值列表}func函数名(形参列表)(返回值类型列表){语句return返回值列表}1)如果返回多个值,在接收时,希望忽略某个返回值,则可以使用_符号表示占位忽略2)如果返回值只有一个,建议返回值类型列表不写()2.递归调用一个函数在函数体内调用了本身,称为递归调用pack
ALEX_CYL学习记录
·
2023-11-07 09:58
golang
leetcode
开发语言
golang
的defer执行时机案例分析
packagemainimport"fmt"funccalcFunc(xint,yint)int{returnx+y}funcmain(){//defer语句的执行顺序是,从右到左,逆序执行deferDemo()//deferDemo1函数demo1:=deferDemo1()fmt.Println(demo1)//0//deferDemo2函数demo2:=deferDemo2()fmt.Pri
追逐梦想之路_随笔
·
2023-11-07 09:57
golang/java
golang
golang
学习7:编译为可被C语言调用的库
说明在使用gobuild或goinstall两个命令编译代码的时候,可以使用-buildmode指定生成什么样的文件。gobuild-buildmode=或者goinstall-buildmode=使用gohelpbuildmode可以查看所有支持的buildmode选项。-buildmode=archiveBuildthelistednon-mainpackagesinto.afiles.Pac
yuanlulu
·
2023-11-07 08:25
golang
golang
c语言
golang
text/template+plugin:在运行过程中生成代码,编译插件,并动态加载使用
目录使用text/template生成代码示例代码输出结果使用plugin生成与加载插件示例代码把代码编译成插件加载插件使用输出结果结合使用优缺点分析优点缺点&注意事项扩展参考链接遇到这样的场景:需要按名来新建对应的struct的实例,并进行调用struct中的函数等后续操作由于无法事先得知所有可能用到的名称,且在代码中预先写死所有可能出现的情况既不够简洁,也没有扩展性最开始尝试使用各种反射方法无
LaLuzEsComoElAgua
·
2023-11-07 08:22
golang
golang
Golang
中实现插件机制的方法对比
但是
Golang
是编译型语言,编译后直接生成的是可执行文件,但是如果我们又需要在不发布版本的情况下实现程序功能的动态扩展,我们可以通过什么方式来实现呢?下面主要介绍
Golang
hunterzhang86
·
2023-11-07 08:15
Go
golang
Go语言正/反向代理的姿势
前几天利用
golang
实现反向代理程序[2],引出了Host请求头在反代中的关键作用。代理程序预置u
有态度的马甲
·
2023-11-07 08:04
nginx
proxy
http
golang
go
Go语言反向代理的姿势
反向代理的血案前几天打算使用
golang
做一个代理程序,
golang
标准库net/http/httputi
有态度的马甲
·
2023-11-07 08:34
百度
nginx
java
proxy
http
大数据毕业设计选题推荐-家具公司运营数据分析平台-Hadoop-Spark-Hive
✨作者主页:IT研究室✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、
Golang
、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。
IT研究室
·
2023-11-07 07:49
大数据项目
大数据
hadoop
spark
hive
毕业设计
【
golang
内存逃逸】
golang
中内存分配有栈(stack)和堆(heap)两种;栈分配:分配速度快,只需要CPU的两个指令“PUSH”和“RELEASE“进行分配和释放。
小马的马甲
·
2023-11-07 06:05
Go
golang
mysql
数据库
聊聊
Golang
逃逸分析
逃逸分析的概念,go怎么开启逃逸分析的log。以下资料来自互联网,有错误之处,请一定告之。什么是逃逸分析wiki上的定义在编译程序优化理论中,逃逸分析是一种确定指针动态范围的方法——分析在程序的哪些地方可以访问到指针。它涉及到指针分析和形状分析。当一个变量(或对象)在子程序中被分配时,一个指向变量的指针可能逃逸到其它执行线程中,或是返回到调用者子程序。如果使用尾递归优化(通常在函数编程语言中是需要
dianfu2892
·
2023-11-07 06:57
golang
数据结构与算法
Golang
保姆级知识点讲解
文章目录一、命名规范二、占位符三、数据类型3.1.ASCII和Unicode字符编码标准四、运算操作五、流程控制5.1.Go语言标签5.2.Go语言continue语句5.3.Go语言goto语句5.4.Go语言数组5.5.Go语言数组[...]5.6.Go语言切片(动态数组)5.7.Go语言Map六.函数6.1.函数和方法区别6.2.函数值传递和地址传递6.3.高阶函数6.4.函数嵌套(闭包)6
Louis yeap
·
2023-11-07 05:42
golang
【Go语言刷题篇】Go从0到入门5:Map综合复习、条件语句、循环语句练习
Go从0到入门5前言Q1:Map-字符串构成Q2:Map-不重复的数Q3:条件语句-年龄判定Q4:条件语句-成绩判定Q5:循环语句-乘法口诀表Q6:循环语句-坐标转换后文:刷题神器前言本期是学习
Golang
程序员洲洲
·
2023-11-07 05:41
算法小记
golang
java
大数据
Go语言中%d %v %t %T %c %b 一篇文章分清楚
一篇文章分清楚,格式输出PrintingScanning参考于Go中文官网,地址是:https://study
golang
.com/pkgdocPrintingverb:通用:%v值的默认格式表示%+v
BigTree的学习之路
·
2023-11-07 05:10
golang
println
Go语言的打印格式
Go语言的函数调用信息
Bychaishushan{AT}gmail.com注:本文初稿发在
Golang
中国博客,这里的内容有部分修改.函数的调用信息是程序中比较重要运行期信息,在很多场合都会用到(比如调试或日志).Go语言runtime
weixin_33692284
·
2023-11-07 04:16
runtime
golang
C&
Golang
函数调用过程详解(三)
《C&
Golang
函数调用过程详解(一)》、《C&
Golang
函数调用过程详解(二)》两文完整介绍了C函数调用过程,在此基础之上,带着《C&
Golang
函数调用过程详解(一)》中开篇的五个问题,来聊一聊
luyaran
·
2023-11-07 04:44
Golang
原创
golang
函数调用过程
寄存器
汇编代码
内存
C&
Golang
函数调用过程详解(一)
在聊C&
Golang
函数调用过程前,先看看以下几个问题:不是主要聊goroutine调度原理么?为什么有涉及到C函数调用过程?CPU是如何从调用者跳转到被调用函数执行的?
luyaran
·
2023-11-07 04:43
Golang
原创
golang
C
函数调用过程
内存
寄存器
Golang
使用函数来实现接口
使用函数来实现接口实现例子总结实现例子假设我们定义一个日志打印器的接口ILogger,还有一个日志打印器工厂接口ILoggerFactory。packagemaintypeILoggerinterface{Debug(contentstring)Debugf(formatstring,args...interface{})Info(contentstring)Infof(formatstring,
czlshadow
·
2023-11-07 04:41
设计模式
go语言学习
golang
接口
函数闭包
设计模式
golang
实现简易Raft
golang
实现简易Raft文章目录
golang
实现简易RaftRaft简介官方动画
golang
实现raftRaft简介随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩
jenrain
·
2023-11-07 02:42
go
golang
golang
实现枚举类型
描述
golang
无枚举类型,但可以借助自定义类型实现什么是枚举类型枚举类型是一种类型,它的值只有有限个.换而言之,枚举类型=一个类型+N个离散值go的实现,可以自定义一个类型,把它作为枚举类型,然后使用该类型定义
w妙音
·
2023-11-07 02:42
golang
golang
Golang
实现LRU算法~
原文地址:
Golang
实现LRU算法~LRU是LeastRecentlyUsed的缩写,即最近最少使用,是一种常用的缓存淘汰算法,选择最近最久未使用的数据予以淘汰,该算法赋予每个数据一个访问字段,用来记录一个元素自上次被访问以来所经历的时间
luyaran
·
2023-11-07 02:12
Golang
原创
golang
算法
开发语言
LRU
Golang
实现定时任务
前言日常运维中难免会遇到主从切换的场景,比如机房迁移、故障机替换等待,为了平滑迁移需要先将待下线主机上的主全部切走,主从切换动作有损所以需要低峰期操作,一般都是凌晨以后,如果联动业务核心指标做好前后校验,其实是可以将该动作自动化的,如果自动化就涉及到定时执行,这里记录下在平台上通过go语言实现定时任务的简单思路通过go语言实现定时任务有两种方法,一种是采用主机自带的crontab机制,go语言有对
Bcc的笔记
·
2023-11-07 02:12
Go笔记
golang
开发语言
后端
GoLang
实现接口的方式
golang
中实现接口的方式:•结构体形式实现结构typeDuckinterface{Swim()Quack()}typePersonstruct{}func(pPerson)Swim(){fmt.Println
延朋
·
2023-11-07 02:11
golang开发
golang
开发语言
后端
golang
实现http(s)代理
简单原理:最近需要用
golang
去实现一个http(s)的代理,简单的解释一下,实现过程就是首先启动一个http(s)的服务,这个很简单,demo一大堆,我就不多说了,接下来要实现代理,很简单的原理就是
GT19930910
·
2023-11-07 02:11
golang
golang
http
开发语言
golang
实现快速排序
golang
算法实现
golang
实现一个快排概要
golang
算法实现思想实现思想大而化小,分而治之将列表看成,左边,中值,右边,三部分,使用递归的思想.所有的中值都会排好序,数列就会排好序实现packagemainimport"fmt"vartestList
SunnWang
·
2023-11-07 02:11
学习分享
golang
算法
开发语言
golang
实现极简todolist
ToDoList最近跟着qimi老师做了一个ToDoList,我做的GitHub地址贴在这里,但由于前端出了点问题,所以都是用postman进行测试原项目地址部分功能展示删除代办查找代办下面给出思路思路其实这是一个很简单的增删改查的实现,要做的就三点:设计路由、设计todo事项的组成、设计增删改查以及返回参数。同时我也从中学到了一点:遇事不决,先写注释!设计路由设计路由针对这个而言很简单,因为总共
RenX000
·
2023-11-07 02:11
自我总结
golang
开发语言
后端
全面的Docker快速入门教程
Docker是一个开源的应用容器引擎,基于
Golang
语言开发,可以让开发者打包他们的应用以及依赖包到一个轻量
时光追逐者
·
2023-11-07 00:04
docker
eureka
容器
Golang
区块链钱包
Golang
作为一种简单、高效的编程语言,被广泛运用于区块链领域。本文将介绍
Golang
区块链钱包的基本概念、特点和使用方法,帮助读者了解和使用这一工具。
一只会写程序的猫
·
2023-11-06 22:53
Go
golang
区块链
开发语言
Golang
爬虫封装
Golang
作为一门强大的编程语言,也提供了丰富的工具和库来实现爬虫功能。在本文中,我们将探讨如何使用
Golang
来封装一个灵活、高效的爬虫程序。
一只会写程序的猫
·
2023-11-06 22:18
Go
golang
爬虫
开发语言
每位 Gopher 都应该了解的
Golang
语言的垃圾回收算法
转载:每位Gopher都应该了解的
Golang
语言的垃圾回收算法介绍关于垃圾回收,比较常见的算法有引用计数、标记清除和分代收集。
Golang
语言使用的垃圾回收算法是标记清除。
Vicky丶云
·
2023-11-06 19:38
大数据毕业设计选题推荐-设备环境监测平台-Hadoop-Spark-Hive
✨作者主页:IT毕设梦工厂✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、
Golang
、安卓Android等项目实战。
IT毕设梦工厂
·
2023-11-06 18:03
大数据项目
大数据
hadoop
spark
hive
毕业设计
Golang
-08 最速gRpc(go版本)使用体验
参考:http://doc.oschina.net/grpc?t=60133https://blog.51cto.com/13914991/2309916?source=drahttps://github.com/gin-gonic/examples/blob/master/grpc/README.md1.安装protoc.exe下载页面:https://github.com/protocolbu
国服最坑开发
·
2023-11-06 17:38
Goland 对容器中的 Go 程序断点远程调试
1,针对
golang
程序打断点有哪几种情况临时进程:针对临时运行一次的
Golang
脚本,比如定时统计脚本,定时推送脚本。常驻进程:针对一直在后台运行的
Golang
程序,比如HTTP或者GRPC服务。
张志翔的博客
·
2023-11-06 17:24
Goland
golang
开发语言
后端
golang
leetcode 1103. 二叉树寻路
思路:通过当前label计算父节点题目限制1<=label<=10^6完全二叉树每一层的节点和节点开始数字为:12481632...所以每一层的数为[]int{1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576}提前计算每一层的数量。遍历找到当前lablel所
Tibbersshao
·
2023-11-06 15:24
腾讯 Code Review 规范出炉!
来源:腾讯技术工程,作者:cheaterlin,腾讯PCG后台开发工程师前言作为公司代码委员会
golang
分会的理事,我review了很多代码,看了很多别人的review评论。
zhisheng_blog
·
2023-11-06 12:17
lighttpd
relativelayout
powerdesigner
weex
ntp
Golang
- sync.map 设计思想和底层源码分析
Golang
-sync.map设计思想和底层源码分析一.引言在Gov1.6之前,内置map是部分goroutine安全的,并发读没有问题,并发写可能有问题在Gov1.6之后,并发读写内置map会报错,在一些知名的开源库都有这个问题
Y先森0.0
·
2023-11-06 12:16
数据结构
算法
java
go
数据库
golang
--sync.map(安全字典)
引言:在Go语言中,多个goroutine之间安全地共享数据是一项挑战。为了解决这个问题,Go语言提供了sync包,并在其中引入了sync.Map类型。sync.Map是一种并发安全的映射数据结构,它提供了高效的并发访问方式,避免了显式的锁操作。本文将深入探讨sync.Map的使用方法和底层实现原理。一、sync.Map概述sync.Map是一个并发安全的映射类型,可以在多个goroutine之间
逍遥侯~
·
2023-11-06 12:15
数据结构
java
算法
golang
--sync包
在Go语言中,sync包提供了一些用于同步和并发控制的工具,帮助我们编写线程安全的并发程序。本文将详细介绍sync包中常用的几个类型和函数,包括互斥锁、读写锁、条件变量和等待组,帮助你更好地理解和应用sync包。1.互斥锁(Mutex)互斥锁(Mutex)是最常用的同步机制,用于保护临界区,防止多个goroutine同时访问共享资源,保证数据的一致性。sync包中的Mutex类型提供了互斥锁的基本
逍遥侯~
·
2023-11-06 12:15
golang
后端
go
青少年编程
软件工程
golang
- sync.Map
Go语言中的map在并发情况下,只读是线程安全的,同时读写是线程不安全的//创建一个int到int的映射m:=make(map[int]int)//开启一段并发代码gofunc(){//不停地对map进行写入for{m[1]=1}}()//开启一段并发代码gofunc(){//不停地对map进行读取for{_=m[1]}}()//无限循环,让并发程序在后台执行for{}运行代码会报错:fatale
canger_
·
2023-11-06 12:45
Go
golang
开发语言
golang
微服务方案
项目说明近期启动一个项目,业务端使用的python,要爬取多维度的数据。有两个业务模块使用的多进程(发现python多线程有弊端),其他业务打算利用go(线程和协程)的特性,以微服务的模式实现。其实直接gobuildmode也可以实现,经团队讨论还是采用了微服务方案,更有长远意义1.dockergo容器化,集群化2.工程框架ginhttps://github.com/gin-gonic/gin支持
DanielC
·
2023-11-06 11:03
golang
面试题:怎么避免内存逃逸?
image问题怎么避免内存逃逸?怎么答在runtime/stubs.go:133有个函数叫noescape。noescape可以在逃逸分析中隐藏一个指针。让这个指针在逃逸分析中不会被检测为逃逸。//noescapehidesapointerfromescapeanalysis.noescapeis//theidentityfunctionbutescapeanalysisdoesn'tthinkt
9號
·
2023-11-06 11:19
上一页
59
60
61
62
63
64
65
66
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他