redis源码调试---vscode使用技巧-----C语言跳转到函数定义

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: redis源码调试---vscode使用技巧-----C语言跳转到函数定义

@TOC

1 安装插件

C/C++v1.16.3 clangd
在这里插入图片描述

2 对于C语言代码,linux安装bear

sudo apt install bear

3 bear make

例如 编译redis
bear make 如报错:“fatal error: jemalloc/jemalloc.h: 没有那个文件或目录”,用下面的编译命令
bear make MALLOC=libc -j4 如果compile_commands.json没有生成,
可以先make clean, 再bear make尝试
中间会生成compile_commands.json 会方便clangd在用户按住ctrl加左键单击的时候跳转到目标定义处。
在这里插入图片描述
make test 可选

4 指定 路径,按住ctrl加左键单击就可以方便快捷的跳转到函数定义了

"clangd.arguments": [
    "--background-index",
    "--compile-commands-dir=${workspaceFolder}"
],

在这里插入图片描述

5 C++不需要像上面那样做

但是需要cmake

6 其它:

6.1 linux 中的 workfow 工程,快速索引

在settings.json里面加入如下内容,用于快速定位函数

{
"clangd.fallbackFlags": [
"-I${workspaceFolder}/_include/workflow",
"-I${workspaceFolder}/_include"
],
"clangd.arguments": [
"--background-index",
"--compile-commandsdir=${workspaceFolder}/build.cmake/"
],
"cmake.buildDirectory":
"${workspaceFolder}/build.cmake",
"cmake.buildEnvironment":
{"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"}
}

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
5天前
|
存储 SQL 网络协议
C语言C/S架构PACS影像归档和通信系统源码 医院PACS系统源码
医院影像科PACS系统,意为影像归档和通信系统。它是应用在医院影像科室的系统,主要的任务是把日常产生的各种医学影像(包括核磁、CT、超声、各种X光机、各种红外仪、显微仪等设备产生的图像)通过各种接口(模拟、DICOM、网络)以数字化的方式海量保存起来,并在需要的时候在一定授权下能够快速地调回使用。同时,PACS系统还增加了一些辅助诊断管理功能。
41 11
|
5天前
|
NoSQL 安全 Unix
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(中)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
16 0
|
5天前
|
NoSQL API Redis
Redis源码(1)基本数据结构(上)
Redis源码(1)基本数据结构
21 2
|
4天前
|
NoSQL 算法 Java
【redis源码学习】持久化机制,java程序员面试算法宝典pdf
【redis源码学习】持久化机制,java程序员面试算法宝典pdf
|
5天前
|
存储 NoSQL Redis
Redis源码、面试指南(5)多机数据库、复制、哨兵、集群(下)
Redis源码、面试指南(5)多机数据库、复制、哨兵、集群
20 1
|
5天前
|
监控 NoSQL Redis
Redis源码、面试指南(5)多机数据库、复制、哨兵、集群(上)
Redis源码、面试指南(5)多机数据库、复制、哨兵、集群
36 0
|
5天前
|
存储 NoSQL 调度
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(下)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
10 0
|
5天前
|
存储 NoSQL API
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(上)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
18 1
|
5天前
|
NoSQL API Redis
Redis源码、面试指南(3)数据对象类型编码(下)
Redis源码、面试指南(3)数据对象类型编码
11 1
|
5天前
|
存储 NoSQL API
Redis源码、面试指南(3)数据对象类型编码(上)
Redis源码、面试指南(3)数据对象类型编码
17 2