摘要: 二、链表 链表的声明与实现在 、`/src/adlist.c`中 通过为链表设置不同的类型特定函数,Redis的链表可以用来保存各种不同类型的值 三、字典 字典的声明与实现在 、`src/dict.c`。字典是redis的底层基础,对数据库的增删改查也是构建在对字典的操作之上的 在源码注释中,字典叫 阅读全文
posted @ 2021-11-23 17:23 bytepro 阅读(141) 评论(0) 推荐(0)
摘要: Go语言中Slice有一个常见的坑,就是数组的切片是否会改变原数组,网上解释的已经非常多了,今天我们来说一下另一个与Slice有关的问题 问题是如何发现的 今天在刷LeetCode题目,全排列,一道回溯法的题目,先用C++写了,没什么问题,然后用golang重写,问题就来了 全部代码如下: func 阅读全文
posted @ 2021-08-18 14:38 bytepro 阅读(102) 评论(0) 推荐(0)
摘要: 在C++中,向vector后面添加元素有两个方法,一个是push_back(),另一个就是emplace_back(),那么同样的功能为什么有两个方法呢? 我们来测试一下: class Int{ public: Int(int x) : x(x) { cout << "构造函数"<<endl; } 阅读全文
posted @ 2021-08-17 19:49 bytepro 阅读(103) 评论(0) 推荐(0)
摘要: 前言 最近学习了Go语言,感觉挺不错,简介易学,Go语言目前只有25个关键字,而C++11已经有76个关键字,C++20还会再添加10个左右,当然Go比C++年轻很多,但Go的一些特性也是非常好用,比如channel,gorontine等等,非常好用。 为了练手,做了这个web聊天室,采用gin w 阅读全文
posted @ 2021-08-11 19:43 bytepro 阅读(212) 评论(0) 推荐(0)
摘要: 给定整数数组nums和整数 k,请返回数组中第 k个最大的元素。 阅读全文
posted @ 2021-07-17 09:56 bytepro 阅读(67) 评论(0) 推荐(0)
摘要: 线程池的作用 在多线程的应用中,线程的频繁创建和销毁会浪费时间,从而影响效率,所以引进线程池和概念,将多个线程维护在线程池中,避免了线程频繁创建与销毁的开销问题 线程池的结构 结构体 struct threadpool_t { pthread_mutex_t lock; //互斥锁 pthread_ 阅读全文
posted @ 2021-07-16 21:28 bytepro 阅读(35) 评论(0) 推荐(0)
摘要: 读写锁 特点 相关操作函数 #include <pthread.h> pthread_rwlock_t rwlock; //初始化读写锁 int pthread_rwlock_init(pthread_rwlock_t *restrict rwlock, const pthread_rwlockat 阅读全文
posted @ 2021-07-16 21:27 bytepro 阅读(36) 评论(0) 推荐(0)
摘要: 找到字符串中所有字母异位词 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指字母相同,但排列不同的字符串。 上代码 class Solution { public: vector<int> findAnagrams(st 阅读全文
posted @ 2021-07-15 20:07 bytepro 阅读(102) 评论(0) 推荐(0)
摘要: 本地常用命令 git init :将文件夹初始化为仓库[repository] git add [filename] :添加追踪文件 git commit -m "[description]" :提交文件到仓库 git status:仓库当前状态 git diff:查看修改内容 git diff H 阅读全文
posted @ 2021-07-09 16:55 bytepro 阅读(46) 评论(0) 推荐(0)
摘要: 一、前言 `containerd` 被设计成嵌入到一个更大的系统中,而不是直接由开发人员或终端用户使用。**当 containerd 和 runC 成为标准化容器服务的基石后,上层的应用就可以直接建立在 containerd 和 runC 之上。我们的目的就是开发一个最小化容器系统,这需要conta 阅读全文
posted @ 2021-05-19 15:41 bytepro 阅读(126) 评论(0) 推荐(0)