![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Golang
文章平均质量分 88
Golang语言社区
喜欢GoLang语言的可以一起分享讨论,欢迎志同道合的朋友!
展开
-
Golang语言社区--golang通用连接池的实现
golang的channel除了goroutine通信之外还有很多其他的功能,本文将实现一种基于channel的通用连接池。何为通用?连接池的实现不依赖具体的实例,而依赖某个接口,本文的连接池选用的是io.Closer接口,只要是实现了该接口的对象都可以被池管理。当然,你可以实现基于interface{}的连接池,这样任何对象都可以被管理。实现原理将连接句柄存入chan转载 2018-02-03 19:09:25 · 884 阅读 · 0 评论 -
[Golang语言社区]--提高 golang 的反射性能
golang 的反射很慢。这个和它的 api 设计有关。在 java 里面,我们一般使用反射都是这样来弄的。Field field = clazz.getField("hello");field.get(obj1);field.get(obj2);这个取得的反射对象类型是 java.lang.reflect.Field。它是可以复用的。只要传入不同的obj,就可以取得这个转载 2018-02-06 15:11:41 · 1876 阅读 · 0 评论 -
Golang语言社区--golang通用连接池的实现
golang的channel除了goroutine通信之外还有很多其他的功能,本文将实现一种基于channel的通用连接池。何为通用?连接池的实现不依赖具体的实例,而依赖某个接口,本文的连接池选用的是io.Closer接口,只要是实现了该接口的对象都可以被池管理。当然,你可以实现基于interface{}的连接池,这样任何对象都可以被管理。实现原理将连接句柄存入chan原创 2018-02-06 19:22:13 · 385 阅读 · 0 评论 -
【Go语言社区】接受 interface 参数,返回 struct 在 go 中意味着什么
注意细节在之前的文章中,我提到了一个关于 accept interfaces, return structs 的参考指南,在查看同事代码的时候经常会被问“为什么”。特别是这不是一个必须遵守的规则。这个想法的关键点以及理解什么时候妥协,在于维护项目灵活性和避免抢占抽象(译者注:“Preemptive abstractions” 并发系统中连续组件的轻量级验证方案的一种抽象技术)之间的平衡。抢占抽象让...转载 2018-02-26 22:02:47 · 857 阅读 · 0 评论 -
Go 语言JSON 技巧
相对于很多的语言来说, Go 的 JSON 解析可谓简单至极.问题通常情况下, 我们在 Go 中经常这样进行 JSON 的解码:package mainimport "encoding/json"// jsonText comes from http://json.org/example.htmlvar jsonText = []byte(`{ "glossary":{ ...转载 2018-02-23 09:41:56 · 290 阅读 · 0 评论 -
Golang语言实现-贪吃蛇
package mainimport ( "fmt" "math/rand" "os" "time")/*#include <windows.h>#include <conio.h>// 使用了WinAPI来移动控制台的光标void gotoxy(int x,int y){ COORD c; c.X=x,转载 2018-02-23 09:46:57 · 1501 阅读 · 0 评论 -
【Golang语言社区】Golang语言面试题
最近在很多地方看到了golang的面试题,看到了很多人对Golang的面试题心存恐惧,也是为了复习基础,我把解题的过程总结下来。面试题写出下面代码输出内容。package mainimport ( "fmt")func main() { defer_call()}func defer_call() { defer func() { fmt.Println("...转载 2018-02-23 18:11:21 · 1785 阅读 · 1 评论 -
Golang语言社区--leaf游戏服务器开源框架分析第五节,消息流程测试
Leaf 是一个由 Go 语言(golang)编写的开发效率和执行效率并重的开源游戏服务器框架。Leaf 适用于各类游戏服务器的开发,包括 H5(HTML5)游戏服务器。Leaf 的关注点:良好的使用体验。Leaf 总是尽可能的提供简洁和易用的接口,尽可能的提升开发的效率稳定性。Leaf 总是尽可能的恢复运行过程中的错误,避免崩溃多核支持。Leaf 通过模块机制和 leaf/go 尽可能的利用多核...转载 2018-03-21 13:25:41 · 2463 阅读 · 0 评论