VSF Documented
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes
visualize_heap_map.Diff Class Reference

Public Member Functions

 __post_init__ (self)
 
bool is_lock_mode (self)
 
list[Blockcurr_only (self)
 
list[Blockprev_only (self)
 
list[Blocklock_new (self)
 
list[Blocklock_freed (self)
 
list[Blockleaked (self)
 
int sum_size (self, list[Block] blocks)
 

Static Public Attributes

Dump prev
 
Dump curr
 

Protected Member Functions

set[int] _freed_addrs (self)
 

Protected Attributes

 _prev_addrs
 
 _curr_addrs
 

Detailed Description

通用对比分析:对比任意两次 dump
锁定期间分析:通用对比的特例,额外约束 prev.locked 且 curr.unlocked

Member Function Documentation

◆ __post_init__()

visualize_heap_map.Diff.__post_init__ (   self)

◆ is_lock_mode()

bool visualize_heap_map.Diff.is_lock_mode (   self)
是否为锁定期间分析模式:相邻两个 dump,第一个 locked,第二个 unlocked

◆ curr_only()

list[Block] visualize_heap_map.Diff.curr_only (   self)
curr 独有的已分配块(新增)

◆ prev_only()

list[Block] visualize_heap_map.Diff.prev_only (   self)
prev 独有的已分配块(释放)

◆ _freed_addrs()

set[int] visualize_heap_map.Diff._freed_addrs (   self)
protected

◆ lock_new()

list[Block] visualize_heap_map.Diff.lock_new (   self)
lock 期间新增的块(curr_only 中 idx >= locked_idx)

◆ lock_freed()

list[Block] visualize_heap_map.Diff.lock_freed (   self)
lock 期间新增且在 unlock 时释放的块

◆ leaked()

list[Block] visualize_heap_map.Diff.leaked (   self)
泄漏:lock 期间新增但未在 unlock 时释放

◆ sum_size()

int visualize_heap_map.Diff.sum_size (   self,
list[Block blocks 
)

Field Documentation

◆ prev

Dump visualize_heap_map.Diff.prev
static

◆ curr

Dump visualize_heap_map.Diff.curr
static

◆ _prev_addrs

visualize_heap_map.Diff._prev_addrs
protected

◆ _curr_addrs

visualize_heap_map.Diff._curr_addrs
protected
Generated from commit: vsfteam/vsf@b2e9e8a