redis0.1源码解析之事件驱动---theanarkh

redis的事件驱动模块负责处理文件和定时器两种任务。
下面是几个函数指针

typedef void aeFileProc(struct aeEventLoop *eventLoop, i…

redis0.1源码解析之链表---theanarkh

分析代码之前先看看链表的数据结构。

1 新建一个链表// 新建一个链表头结点
list *listCreate(void)
{
struct list *list;

i…

redis0.1源码解析之字典---theanarkh

字典也叫哈希表。看一下redis中的实现。下面是数据结构关系图。


redis中,哈希表的设计思想是,申请一个指针数组,然后每个元素指向一个链表用来存储数据(即链地址法)。

redis0.1源码解析之内存分配---theanarkh

这是redis源码分析的第一篇,选取早期版本,一睹redis的基础原理。这篇分析内存分配。
redis内存管理是对malloc系列函数做了封装。额外记录了申请的内存大小信息。

#incl…

MATLAB实现Excel中lookup函数查找匹配功能---艾木樨

在Excel中的lookup函数很容易可以实现以下功能:根据左侧序号对应的姓名匹配右侧相同序号的姓名。

现在小编就在琢磨能不能用matlab实现Excel的lookup匹配查找的功能…

系统服务构建-BFF助力前后端分离---needrunning

专业术语

本文试图讲明白软件架构中的一个新概念 BFF,涉及到的几个技术概念先做一个前置约束和语意说明

前端应用:负责直接呈现给终端用户的应用系统,如网站,APP 等带有…

博客系统知多少:揭秘那些不为人知的学问(二)---Edi Wang

上篇《博客系统知多少:揭秘那些不为人知的学问(一)》介绍了博客的历史、我的博客故事及博客的受众来源。本篇精彩继续,介绍博客基本功能设计要点。

1.“博客”的前世今生

2.…

真的,不要迷信数据分析。---数据森麟

最近有同学问了我一个很致命的问题:数据分析真的有必要做吗?为什么感觉都是伪需求?怎么确定数据分析结论是真的?

其实这个问题我也曾经想过,究竟为什么很多人都在神化数据分析,遇到任何问…

JDK中的timer正确的打开与关闭---一觉睡到小时候

Timer和TimerTask

Timer是jdk中提供的一个定时器工具,使用的时候会在主线程之外起一个单独的线程执行指定的计划任务,可以指定执行一次或者反复执行多次。

TimerTa…

模糊查询%在最前面,能否或者怎么使用索引---一觉睡到小时候

前言

众所周知,在索引时,如果模糊查询的%置于最前面,索引会失效。但是在%前置时,什么情况下会使用到索引?

补充

like %keyword 索引失效,使用全表扫描。但可以通过翻转…

Java并发编程CAS---一觉睡到小时候

CAS 是什么

CAS 的全称 Compare-And-Swap,它是一条 CPU 并发。

它的功能是判断内存某一个位置的值是否为预期,如果是则更改这个值,这个过程就是原子的。

已开源!通过高度驱动的注意力网络改善城市场景语义分割 | CVPR2020---AI算法修炼营

论文地址:https://arxiv.org/abs/2003.05128

代码地址:https://github.com/shachoi/HANet(已开源)

该论文…

使用栈解决实际面试问题---TalkPython

数据结构这门学了很多遍,基本概念都知道,而且还很熟。可就是在实际工作中找不到应用的地方。这个问题,应该是大部分人都遇到的问题。今天我们使用栈来解决一个实际问题。

假设你在面试过程中,…

生成一个指定长度的随机数---TalkPython

生成随机数在日常工作中的使用率也很高。虽说Python标库自带了生成随机数的功能。但是我想写一个函数,既可以生成数字,又可以生成字符串。而且还可以指定长度,自由自在的生成需要的数据。把它放在我的…

「持续集成实践系列」Jenkins 2.x 搭建CI需要掌握的硬核要点(一)---测试开发技术

1. 前言

随着互联网软件行业快速发展,为了抢占市场先机,企业不得不持续提高软件的交付效率。特别是现在国内越来越多企业已经在逐步引入DevOps研发模式的变迁,在这些背景催促之下,对于企业研发团队…