This is on behalf of <lehuading@tencent.com> The `EpsilonHeap::allocate_work` method maybe can be fixed and improved by this: 1. it can prevent allocate failure by retry `_space->par_allocate` before expanding virtual space, when there not enough virtual space but another thread expanding succeeded just and has enough space. 2. it can reduce the lock time by move `res = _space->par_allocate(size);` out of lock scope.
|