Closed Bug 1074770 Opened 10 years ago Closed 3 years ago

Add CircularBuffer class to MFBT

Categories

(Core :: MFBT, defect)

defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: kanru, Unassigned)

References

Details

Attachments

(1 file, 1 obsolete file)

Needed to implement bug 1074203. Note profiler already has a circular buffer implemented in ThreadProfile which needs to iterate the items in the buffer.
Still can't replace the one currently used in the profiler which has the concept of "generation" and flush(), erase() operation. The goal is to have a drop-in replacement for circular-buffer-like structures. The first user will be the task tracer profiler. In the beginning I wanted to make it use mozilla::Array but found that the profiler is able to config the buffer size dynamically so can't use a compile time const size array type.
Attachment #8497415 - Attachment is obsolete: true
Attachment #8501585 - Flags: feedback?(jwalden+bmo)
Bug 1127498 removes the profiler buffer's flush() and erase() methods. They were used for the "jank-only" mode which nobody was using.
Depends on: 1127498
Attachment #8501585 - Flags: feedback?(jwalden+bmo)

Task Tracer was removed in bug 1715257, so we don't need this one for that anymore -- also the profiler itself doesn't use a fixed-size circular buffer anymore, it was not suitable for the many-processes Fission world.
If a circular buffer is needed for something else, another bug can be opened then.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: