Ignore:
Timestamp:
May 14, 2012, 4:47:53 PM (13 years ago)
Author:
[email protected]
Message:

Enh: Add the Ability to Disable / Enable JavaScript GC Timer
https://bugs.webkit.org/show_bug.cgi?id=86382

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add flag to GCActivityCallback to enable / disable activity timer.
Add api via Heap to set the flag's value.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Windows export
  • heap/Heap.cpp:

(JSC::Heap::setGarbageCollectionTimerEnabled):

  • heap/Heap.h:
  • runtime/GCActivityCallback.h:

(JSC::GCActivityCallback::isEnabled):
(JSC::GCActivityCallback::setEnabled):
(JSC::GCActivityCallback::GCActivityCallback):

  • runtime/GCActivityCallbackCF.cpp:

(JSC::DefaultGCActivityCallbackPlatformData::timerDidFire):

Source/WebCore:

Plumbing to set / clear JS GC activity timer enable flag.

  • WebCore.exp.in:
  • bindings/js/GCController.cpp:

(WebCore::GCController::setJavaScriptGarbageCollectorTimerEnabled):

  • bindings/js/GCController.h:

Source/WebKit/mac:

Plumbing to set / clear JS GC activity timer enable flag.

  • Misc/WebCoreStatistics.h:
  • Misc/WebCoreStatistics.mm:

(+[WebCoreStatistics setJavaScriptGarbageCollectorTimerEnabled:]):

Source/WebKit2:

Plumbing to set / clear JS GC activity timer enable flag.

  • UIProcess/API/C/WKContext.cpp:

(WKContextSetJavaScriptGarbageCollectorTimerEnabled):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setJavaScriptGarbageCollectorTimerEnabled):

  • UIProcess/WebContext.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::setJavaScriptGarbageCollectorTimerEnabled):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/runtime/GCActivityCallback.h

    r115915 r117015  
    4848    virtual void synchronize() { }
    4949    virtual void cancel() { }
     50    bool isEnabled() const { return m_enabled; }
     51    void setEnabled(bool enabled) { m_enabled = enabled; }
    5052
    5153protected:
    52     GCActivityCallback() {}
     54    GCActivityCallback()
     55        : m_enabled(true)
     56    {
     57    }
     58
     59    bool m_enabled;
    5360};
    5461
Note: See TracChangeset for help on using the changeset viewer.