Valgrind 集成

使用 Valgrind 工具检测 Nginx C 模块中的内存泄漏和内存错误。

使用方法

通过环境变量启用 Valgrind 集成:

bash
1# 基本的 Valgrind 检测
2TEST_NGINX_USE_VALGRIND=1 prove -v t/
3
4# 配合 leak check
5TEST_NGINX_USE_VALGRIND=1 \
6 TEST_NGINX_SLEEP=1 \
7 prove -v t/001-basic.t

Valgrind 会显著降低 Nginx 的运行速度(通常慢 10-20 倍)。只在需要时启用。

内存泄漏检测

TEST_NGINX_CHECK_LEAK=1 启用更严格的内存泄漏检测模式:

bash
1TEST_NGINX_CHECK_LEAK=1 prove -v t/

内存泄漏检测通常需要配合 no_shuffle() 和较高的 repeat_each 值使用,以确保泄漏的可重现性。