MCPcopy Create free account
hub / github.com/python/cpython / _discard_arena

Method _discard_arena

Lib/multiprocessing/heap.py:170–186  ·  view source on GitHub ↗
(self, arena)

Source from the content-addressed store, hash-verified

168 return (arena, 0, length)
169
170 def _discard_arena(self, arena):
171 # Possibly delete the given (unused) arena
172 length = arena.size
173 # Reusing an existing arena is faster than creating a new one, so
174 # we only reclaim space if it's large enough.
175 if length < self._DISCARD_FREE_SPACE_LARGER_THAN:
176 return
177 blocks = self._allocated_blocks.pop(arena)
178 assert not blocks
179 del self._start_to_block[(arena, 0)]
180 del self._stop_to_block[(arena, length)]
181 self._arenas.remove(arena)
182 seq = self._len_to_seq[length]
183 seq.remove((arena, 0, length))
184 if not seq:
185 del self._len_to_seq[length]
186 self._lengths.remove(length)
187
188 def _malloc(self, size):
189 # returns a large enough block -- it might be much larger

Callers 1

Calls 2

popMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected