golang

golang grpc简单使用

helight | 1700字 | 阅读大约需要4分钟 | 归档于golang

2019年5月18日

golang grpc简单使用

继续阅读

Golang UnitTest单元测试

helight | 2800字 | 阅读大约需要6分钟 | 归档于golang

2019年5月18日

Golang UnitTest单元测试

继续阅读

Golang中 method has pointer receiver 异常

helight | 600字 | 阅读大约需要2分钟 | 归档于golang

2019年5月18日

Golang中 method has pointer receiver 异常

继续阅读

golang单元测试之mock

helight | 5400字 | 阅读大约需要11分钟 | 归档于golang

2019年5月18日

golang单元测试之mock

继续阅读

Golang官方依赖管理工具:dep

helight | 1800字 | 阅读大约需要4分钟 | 归档于golang

2019年5月18日

Golang官方依赖管理工具:dep

继续阅读

helight的github项目

helight | 1300字 | 阅读大约需要3分钟 | 归档于programming

2019年5月18日

helight的github项目

继续阅读

golua虚拟机的使用

helight | 2100字 | 阅读大约需要5分钟 | 归档于golang

2018年11月18日

gopher-lua这个组件,这个是使用golang重写的支持Lua5.1的虚拟机,在执行上可以直接golang无缝结合,有非常好的go的api接口,在使用上也流畅很多,在实现思路上也采用golang的一些思路,和golang结合更好。

继续阅读

golang1.8以后yacc安装和使用

helight | 300字 | 阅读大约需要1分钟 | 归档于golang

2018年11月7日

golang在1.8以后的tool工具中默认移除了yacc工具,如果要使用只能自己安装。

今天在测试代码中要用一下这个工具,突然发现没有,需要自己安装 首先这里下载代码: http://github.com/golang/tools/cmd/goyacc/

继续阅读

golang调度机制学习

helight | 2400字 | 阅读大约需要5分钟 | 归档于golang

2018年5月15日

1.Golang的核心之一gorountine

go语言非常重要的一个特性就是gorountine,有了这个东东,就可以很简单的做并发处理程序,比起c++和java的方式来说可以说简单了很多很多。那么gorountine又是一个什么样的东东呢? 从使用上来看它就是一个函数,使用起来有点像thread,但是实际上又不是,thread我们一般说起是指内核中的调度单元,他也是又用户态传递一个函数给thread,再由内核来调度执行,而gorountine是完全用户态的一个东西,而它要想和thread一样被执行那么就需要设计一个用户态的调度器,来保存它结构,执行现场和调度切换不同的gorountine进行执行。更多的说是一种叫做协程的东西,完全由用户态程序控制。这和C、C++完全不一样,C、C++的语言编译之后执行完全是交给操作系统内核来控制执行,而golang,在编译时会加入自己的调度器代码,在执行上按照自己的调度器进行调度执行。

继续阅读

Golang信号处理和如何实现进程的优雅退出

helight | 2900字 | 阅读大约需要6分钟 | 归档于golang

2018年3月15日

Linux系统中的信号类型

各操作系统的信号定义或许有些不同。下面列出了POSIX中定义的信号。 在linux中使用34-64信号用作实时系统中。 命令 man 7 signal 提供了官方的信号介绍。也可以是用kill -l来快速查看 列表中,编号为1 ~ 31的信号为传统UNIX支持的信号,是不可靠信号(非实时的),编号为32 ~ 63的信号是后来扩充的,称做可靠信号(实时信号)。不可靠信号和可靠信号的区别在于前者不支持排队,可能会造成信号丢失,而后者不会。

继续阅读

golang的grpc学习笔记2

helight | 1700字 | 阅读大约需要4分钟 | 归档于golang

2018年2月7日

前言

上一篇文章简单体验了一下grpc的golang使用,从环境安装到简单demo的编写,编译和测试,感觉还不错,今天再进一步学习分析其用法和一些要注意的坑。

继续阅读

lex和yacc 学习笔记

helight | 2300字 | 阅读大约需要5分钟 | 归档于linux 应用

2018年1月20日

前一段时间在项目中要使用一个规则表达式计算的功能,而且想可以任意扩展计算功能,比如计算AUB,A和B都表示一个号码包,计算并集,当然实际使用的公式会更为复杂,这里举例说明。在计算时候要判断如果A包已经计算ok了就可以使用A包,如果没有计算成功就需要发起计算并且等待计算成功,B包也是要同样的处理过程,最后再计算并集。当然这样一个功能自己定义写肯定是没问题的,但是还要想到后面的扩展性和程序代码可移交等问题,还是想有一个通用的方法来解决,所以在最后想到了使用yacc和lex来组织解决。实际上后来发现用yacc和lex非常方便的可以解决这类问题,而且在扩展性上非常好。所以想这里先总结一下yacc和lex使用的一些语法特点和具体我们使用的方式。现在这篇中总体总结一下yacc和lex的语法特点,下一篇再写具体使用中的一些过程。

继续阅读