摘要:在上一篇文章【简单了解系列】从基础的使用来深挖HashMap里,我从最基础的使用中介绍了HashMap,大致是JDK1.7和1.8中底层实现的变化,和介绍了为什么在多线程下可能会造成死循环,扩容机制是什么样的。感兴趣的可以先看看。 我们知道,HashMap是非线程安全的容器,那么为什么Concurr 阅读全文
posted @ 2020-06-02 10:18 detectiveHLH 阅读(143) 评论(0) 推荐(0) 编辑
摘要:HashMap定义 说的专业一点,HashMap是常用的用于存储key value键值对数据的一个集合,底层是基于对Map的接口实现。每一个键值对又叫Entry,这些Entry分散的存储在一个由数组和链表组成的集合中。当然在Java8中,Entry变成了Node。 说的通俗一点,就像你去住酒店,你下 阅读全文
posted @ 2020-04-21 08:45 detectiveHLH 阅读(153) 评论(0) 推荐(0) 编辑
摘要:距离上次更新已经有一个月了,主要是最近工作上的变动有点频繁,现在才暂时稳定下来。这篇博客的本意是带大家从零开始搭建K8S集群的。但是我后面一想,如果是我看了这篇文章,会收获什么?就是跟着步骤一步一走吗?是我的话我会选择拒绝,所以我加了关于K8S的简单介绍,每一步的步骤都添加了解释。由于篇幅和时间原因 阅读全文
posted @ 2019-12-16 14:01 detectiveHLH 阅读(879) 评论(9) 推荐(13) 编辑
摘要:前言 接触WebAssembly之后,在google上看了很多资料。感觉对WebAssembly的使用、介绍、意义都说的比较模糊和笼统。感觉看了之后收获没有达到预期,要么是文章中的例子自己去实操不能成功,要么就是不知所云、一脸蒙蔽。本着业务催生技术的态度,这边文章就诞生了。前部分主要是对WebAss 阅读全文
posted @ 2018-11-08 14:34 detectiveHLH 阅读(38584) 评论(11) 推荐(12) 编辑
摘要:在上一篇文章【简单了解系列】从基础的使用来深挖HashMap里,我从最基础的使用中介绍了HashMap,大致是JDK1.7和1.8中底层实现的变化,和介绍了为什么在多线程下可能会造成死循环,扩容机制是什么样的。感兴趣的可以先看看。 我们知道,HashMap是非线程安全的容器,那么为什么Concurr 阅读全文
posted @ 2020-06-02 10:18 detectiveHLH 阅读(143) 评论(0) 推荐(0) 编辑
摘要:HashMap定义 说的专业一点,HashMap是常用的用于存储key value键值对数据的一个集合,底层是基于对Map的接口实现。每一个键值对又叫Entry,这些Entry分散的存储在一个由数组和链表组成的集合中。当然在Java8中,Entry变成了Node。 说的通俗一点,就像你去住酒店,你下 阅读全文
posted @ 2020-04-21 08:45 detectiveHLH 阅读(153) 评论(0) 推荐(0) 编辑
摘要:PS:通俗一点的解释都会在引用块中 Nothing is true, Everything is permitted. 0. 什么是TCP TCP,全称Transmission Control Protocol,是一种面向连接、可靠的、基于字节流的单播协议。与我们常说的TCP/IP协议不同,TCP/ 阅读全文
posted @ 2020-03-03 20:55 detectiveHLH 阅读(258) 评论(1) 推荐(1) 编辑
摘要:Nothing is true. Everything is permitted. 写在前面 先聊聊为什么想到了要用Vuepress来代替原来写在Confluence上的文档。 大意是有个需要其他部门接入的项目,这个项目有个用md写的接入文档,其他部门的人需要看着这个文档才知道怎么接以及哪些东西需要 阅读全文
posted @ 2019-12-27 09:21 detectiveHLH 阅读(538) 评论(9) 推荐(2) 编辑
摘要:距离上次更新已经有一个月了,主要是最近工作上的变动有点频繁,现在才暂时稳定下来。这篇博客的本意是带大家从零开始搭建K8S集群的。但是我后面一想,如果是我看了这篇文章,会收获什么?就是跟着步骤一步一走吗?是我的话我会选择拒绝,所以我加了关于K8S的简单介绍,每一步的步骤都添加了解释。由于篇幅和时间原因 阅读全文
posted @ 2019-12-16 14:01 detectiveHLH 阅读(879) 评论(9) 推荐(13) 编辑
摘要:最近在重构代码的时候,抽象了大量的接口。也使用这些抽象的接口做了很多伪继承的操作,极大的减少了代码冗余,同时也增加了代码的可读性。 然后随便搜了一下关于Go继承的文章,发现有的文章的代码量过多,并且代码format极其粗糙,命名极其随意,类似于A、B这种,让人看着看着就忘了到底是谁继承谁,我又要回去 阅读全文
posted @ 2019-10-25 15:51 detectiveHLH 阅读(219) 评论(0) 推荐(0) 编辑
摘要:用Go语言写游戏服务器也有一个多月了,也能够明显的感受到两者的区别。这篇文章就是想具体的聊聊其中的区别。当然,在了解区别之间,我们先简单的了解一下Go语言本身。 PS:这里仅拿SLG手游举例子 1. Go语言的特点 Go语言跟其他的语言例如Java比起来,算得上一门很年轻的语言。Go语言是由Robe 阅读全文
posted @ 2019-10-15 13:33 detectiveHLH 阅读(488) 评论(0) 推荐(2) 编辑
摘要:1. 重复的随机数 废话不多说,首先我们来看使用seed的一个很神奇的现象。 go func (rng rngSource) Seed(seed int64) { rng.tap = 0 rng.feed = rngLen rngTap seed = seed % int32max if seed 阅读全文
posted @ 2019-10-08 20:17 detectiveHLH 阅读(167) 评论(0) 推荐(1) 编辑
摘要:最近很久没有更新博客了,实在太忙。因为在这段时间里我做了一个改变了我现在职业生涯的一个决定,而我现在正在为这个决定而加倍的努力付出。 我认为我还是有必要把这个比较重要的节点记录下来,我也是第一次在自己的博客里面写这种偏阅读非技术类的文章,虽然没有技术细节,却又与技术息息相关。 决定转岗 我在大概两周 阅读全文
posted @ 2019-07-24 15:18 detectiveHLH 阅读(187) 评论(1) 推荐(3) 编辑
摘要:1. 什么是选择排序? 首先贴上从wiki上弄下来的关于选择排序的定义。 选择排序 (Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。 阅读全文
posted @ 2019-07-02 11:54 detectiveHLH 阅读(117) 评论(0) 推荐(0) 编辑