HundredLee's Blog

用Golang开发以太坊去中心化应用(连载一)

个人简介

HundredLee
2013年起,便奋斗在数字货币交易平台开发第一线,2016年接触区块链,从此走上不归路。目前正在开发一套全新的高速撮合引擎。
微博 :http://weibo.com/hundredlee2011/home
邮箱 :hundred9411#gmail.com

Mehr lesen

用Docker定制你的Golang开发环境

前言

这篇文章主要针对MacBook用户,并且实验的环境也是MacOS。Windows上应该也可以正常地进行,但是我没有测试过,有兴趣的童鞋可以试试。

这篇文章针对有一定Docker基础的童鞋,如果你还不懂Docker的一些基础命令,或者操作方式,那么你需要先预习一下。

Mehr lesen

wechat_pusher - 基于Golang开发的高性能微信消息定时推送框架

Github

Mehr lesen

总结Go中如何正确地close channel的几种姿势

Mehr lesen

Go中的同步与锁

最近学习了Go语言中同步包中的互斥锁、读写锁、Once、waitGroup。在并发程序开发的过程中,这两种锁是非常重要的,包括对共享资源进行访问控制的时候。sync是Go语言中的标准库。

Mutex 互斥锁

    Mehr lesen

    Go包管理的探索与实践

    • 引言:刚学Go没多久,但是很快我就发现了Go的一个特别坑爹的地方 —— 包管理。当然不只是GFW的问题,更多的是有的时候,每个项目使用的包的版本并不是完全一致的,而Go无法做到这一点。虽然Go1.5之后加了vendor的特性,但是我仍然觉得不够。

    Mehr lesen

    Git设置全局ss代理

    前提是本机已经开启了ShadowSocks,这里推荐用一枝红杏,比较稳定,而且速度也可以。
    https://my.yizhihongxing.com/aff.php?aff=1936

    Mehr lesen

    关于Goroutine Channel Select 的用法和理解

    声明

    转载请注明本文地址,感谢 :)

    了解进程、线程、协程

    本文不详细解释这三个名词的意思,下面有一篇文章,不懂的同学可以参考看看。

    Goroutine的使用

    • Goroutine 奉行通过通信来共享内存,而不是共享内存来通信
    • 使用goroutine很简单,只需要用到一个关键字go,我们用一段代码来示例一下如何使用go关键字

    Mehr lesen

    使用[git format-patch]生成git补丁

    引言:场景是这样的,之前我拥有权限的一个git仓库,后来由于某些原因不再具有管理该git仓库的权限。但是由于在失去权限后,我在本地对该项目进行了一些代码的优化,并且需要更新到远程仓库的master上。思前想后,最后用了git提供的format-patch命令。
    实际上git提供了两种简单的patch方案,一是用git diff生成的标准patch,第二种是git format-patch生成的git专用patch。本文使用的是第二种。

    Mehr lesen

    【Go学习笔记】13、反射 reflect

    反射reflection

    反射可大大提高程序的灵活性,使得interface{}有更大的发挥余地
    反射使用TypeOf和ValueOf函数从接口中获取目标对象信息
    反射会将匿名字段作为独立字段(匿名字段本质)
    想要利用反射修改对象状态,前提是interface.data 是settable,即pointer-interface
    通过反射可以动态调用方法

    Mehr lesen