2009-01-23 Dmitry Titov <dimich@chromium.org>
authorap@webkit.org <ap@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Jan 2009 15:53:42 +0000 (15:53 +0000)
committerap@webkit.org <ap@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 23 Jan 2009 15:53:42 +0000 (15:53 +0000)
commitc56275fa18d8e6ae2c4b9368fe50fb608bb56842
treee7bcef0bac507fa3f072657e1597389ccd6b1577
parent86f34fbbf42f8a186bcd37a3a7ee80af7c333d92
2009-01-23  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23374
        Add WorkerRunLoop to encapsulate message queue and timer heap.
        This is first half (timer heap is added as separate patch).

        * GNUmakefile.am: Added WorkerRunLoop.cpp to the build.
        * WebCore.vcproj/WebCore.vcproj: Same as above.
        * WebCore.xcodeproj/project.pbxproj: Same as above
        * dom/WorkerContext.cpp:
        (WebCore::WorkerContext::postTask):
        * dom/WorkerContext.h:
        * dom/WorkerMessagingProxy.cpp:
        (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
        (WebCore::WorkerMessagingProxy::workerThreadCreated):
        * dom/WorkerRunLoop.cpp: Added.
        (WebCore::WorkerRunLoop::run): Runs the loop until terminate() is called.
        (WebCore::WorkerRunLoop::terminate): Causes the loop to exit.
        (WebCore::WorkerRunLoop::postTask): Adds a task to the internal queue.
        * dom/WorkerRunLoop.h: Added.
        (WebCore::WorkerRunLoop::WorkerRunLoop):
        * dom/WorkerThread.cpp:
        (WebCore::WorkerThread::workerThread):
        (WebCore::WorkerThread::stop):
        * dom/WorkerThread.h:
        (WebCore::WorkerThread::runLoop):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@40161 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/GNUmakefile.am
WebCore/WebCore.vcproj/WebCore.vcproj
WebCore/WebCore.xcodeproj/project.pbxproj
WebCore/dom/WorkerContext.cpp
WebCore/dom/WorkerContext.h
WebCore/dom/WorkerMessagingProxy.cpp
WebCore/dom/WorkerRunLoop.cpp [new file with mode: 0644]
WebCore/dom/WorkerRunLoop.h [new file with mode: 0644]
WebCore/dom/WorkerThread.cpp
WebCore/dom/WorkerThread.h