Fix memory leaks in SWOOLE_BASE mode #5134
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
在Swoole\Server在SWOOLE_BASE模式下执行shutdown时,出现memory leaks
在开启debug的环境下,执行以下脚本:
执行结果如下:
经过使用
valgrind
检测发现:MessageBus的buffer_申请的堆内存没有得到释放导致,由于MessageBus和Server拥有一致的生命周期,经检查php在销毁
Swoole\Server
对象时,有销毁server对象,由于SWOO_BASE
模式下process_type
不是SW_PROCESS_MASTER
,因而该模式下没有销毁server
。