anet.c — 网络抽象
源文件:src/anet.c · 共 813 行 C 代码
模块职责
BSD socket 封装:bind/listen/accept/non-blocking。
文件头注释
/* anet.c -- Basic TCP socket stuff made a bit less boring
*
* Copyright (c) 2006-Present, Redis Ltd.
* All rights reserved.
*
* Licensed under your choice of (a) the Redis Source Available License 2.0
* (RSALv2); or (b) the Server Side Public License v1 (SSPLv1); or (c) the
* GNU Affero General Public License v3 (AGPLv3).
*/
主要数据结构与函数
- 数据结构:见
src/anet.h同名头文件 - 关键函数:通过
grep -nE '^(void|int|robj\*|sds|list|dict|client|server)' src/anet.c检索
阅读路径建议
- 先看
anet.h头文件了解对外接口 - 再读本文件顶部
#include列表确认依赖 - 找
^[a-z_]+Init\(类入口函数作为切入点