diff options
Diffstat (limited to 'Source/JavaScriptCore/heap/IncrementalSweeper.h')
-rw-r--r-- | Source/JavaScriptCore/heap/IncrementalSweeper.h | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/Source/JavaScriptCore/heap/IncrementalSweeper.h b/Source/JavaScriptCore/heap/IncrementalSweeper.h index 48f040409..80d674ca9 100644 --- a/Source/JavaScriptCore/heap/IncrementalSweeper.h +++ b/Source/JavaScriptCore/heap/IncrementalSweeper.h @@ -1,47 +1,37 @@ #ifndef IncrementalSweeper_h #define IncrementalSweeper_h +#include "HeapTimer.h" #include "MarkedBlock.h" #include <wtf/HashSet.h> #include <wtf/PassOwnPtr.h> #include <wtf/RetainPtr.h> #include <wtf/Vector.h> -#if USE(CF) -#include <CoreFoundation/CoreFoundation.h> -#endif - namespace JSC { class Heap; -class IncrementalSweeper { +class IncrementalSweeper : public HeapTimer { public: - ~IncrementalSweeper(); - static PassOwnPtr<IncrementalSweeper> create(Heap*); void startSweeping(const HashSet<MarkedBlock*>& blockSnapshot); + virtual void doWork(); private: #if USE(CF) IncrementalSweeper(Heap*, CFRunLoopRef); - static void timerDidFire(CFRunLoopTimerRef, void*); void doSweep(double startTime); void scheduleTimer(); void cancelTimer(); - Heap* m_heap; unsigned m_currentBlockToSweepIndex; - RetainPtr<CFRunLoopTimerRef> m_timer; - RetainPtr<CFRunLoopRef> m_runLoop; - CFRunLoopTimerContext m_context; - double m_lengthOfLastSweepIncrement; Vector<MarkedBlock*> m_blocksToSweep; #else - IncrementalSweeper(); + IncrementalSweeper(JSGlobalData*); #endif }; |