摘要: Goland 中Antlr4插件 在goland中安装Antlr4插件,用于识别输入的字符在在语法文件中生成的语法树的样子,大概就是如下的摸样 下载步骤: 1.点击文件中的设置选项 2.在插件目录下输入Antlr4搜索插件 3.点击安装即可 编写自己的语言语法文件 编写语法之前,我们首先要构思一下自 阅读全文
posted @ 2023-03-28 14:53 ThirteenAnimation 阅读(695) 评论(0) 推荐(0) 编辑
摘要: Antlr4文件解析流程 该图展示了一个语言应用程序中的基本流动过程 输入一个字符流,首先经过词法分析,获取各个Token 然后经过语法分析,组成语法分析树 Antlr4语法书写规范 语法关键字和使用 | 符号 | 作用 | | | | | ? | 表达式可选| | * | 表达式出现0此或多次| 阅读全文
posted @ 2023-03-27 15:18 ThirteenAnimation 阅读(1221) 评论(0) 推荐(0) 编辑
摘要: Antlr4 简介 ANTLR(全名:ANother Tool for Language Recognition)是基于LL(*)算法实现的语法解析器生成器(parser generator),用Java语言编写,使用自上而下(top-down)的递归下降LL剖析器方法。由旧金山大学的Terence 阅读全文
posted @ 2023-03-24 16:28 ThirteenAnimation 阅读(590) 评论(0) 推荐(1) 编辑
摘要: 全局队列(Global Queue):存放等待运行的 G。 P 的本地队列:同全局队列类似,存放的也是等待运行的 G,存的数量有限,不超过 256 个。新建 G’时,G’优先加入到 P 的本地队列,如果队列满了,则会把本地队列中一半的 G 移动到全局队列。 P 列表:所有的 P 都在程序启动时创建, 阅读全文
posted @ 2023-02-20 17:05 ThirteenAnimation 阅读(169) 评论(0) 推荐(0) 编辑
摘要: golang中也使用分代概念分配内容,同样也是用标记清除算法做垃圾回收。 tiny :size < 16 bytes && has no pointer(noscan); small :has pointer(scan) || (size >= 16 bytes && size <= 32 KB); 阅读全文
posted @ 2023-02-20 17:05 ThirteenAnimation 阅读(53) 评论(0) 推荐(0) 编辑
摘要: Parallel.For、Parallel.Foreach 的要求: 同样的数据类型,例如:List<T>,Dictionary<T,F>,IEnumerable<T>,等等集合类的操作 执行相同的函数:在Parallel.For或者Parallel.Foreach中只能传入一个Action,也就是 阅读全文
posted @ 2023-02-20 17:04 ThirteenAnimation 阅读(136) 评论(0) 推荐(1) 编辑
摘要: GC简介:垃圾回收(Garbage Collection)也被称为自动内存管理技术,在现代编程语言中使用得相当广泛,常见的 Java、Go、C# 均在语言的 runtime 中集成了相应的实现。 对象创建,内存分配 观察对象分配时,主要有三个参与者,Application,allocator,gra 阅读全文
posted @ 2023-02-20 16:53 ThirteenAnimation 阅读(95) 评论(0) 推荐(1) 编辑
摘要: 本文主要描述reids数据结构和底层数据结构的实现,用于熟悉redis的底层数据结构实现原理,下图是reids的整个数据结构组成。这篇文章主要介绍value对象这部分数据结构 SDS初识 string结构对应底层SDS数据结构,SDS是redis最简单的数据结构,一般用于分布式锁和Json序列化对象 阅读全文
posted @ 2023-02-20 16:43 ThirteenAnimation 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 前言 缓存是提升性能的通用方法,现在大多数的缓存实现都使用了经典的技术。当读多写少的情况时,通常会使用缓存来提升获取数据的性能。使用缓存的方式大概有Reids、MemoryCahce、Memcached、Dictionary等等方式来实现自己的缓存,使用缓存时可能考虑最多的时如何存储数据,而不是考虑 阅读全文
posted @ 2023-02-20 16:32 ThirteenAnimation 阅读(129) 评论(0) 推荐(0) 编辑
摘要: Expression简介 表达式树又称为“表达式目录树”,以数据形式表示语言级代码,它是一种抽象语法树或者说是一种数据结构。 简述一个Expression 表达式 1是一个节点,是一个常量类型的表达式,+号是一个节点,是一个二进制类型的表达式。在Expression中每个元素都是一个独立的节点,节点 阅读全文
posted @ 2023-02-17 17:22 ThirteenAnimation 阅读(188) 评论(0) 推荐(0) 编辑