[prev in list] [next in list] [prev in thread] [next in thread] 

List:       webkit-dev
Subject:    [webkit-dev] Single-threaded database/storage solution
From:       "Yong Li" <yong.li () torchmobile ! com>
Date:       2009-08-18 17:44:05
Message-ID: 8592B1CB4E4D4E2F9F1C8095D58E583F () ylvista
[Download RAW message or body]

Hi, All,

The current webkit database/storage is implemented with creating new 
threads. But not all platform/products support mulple-threading. Also, 
threading can be expensive on some platforms. Except this database/storage 
implementation, WEBKIT platform-crossing code can build and run in a single 
thread. WEBKIT generally uses WebCore::Timer To avoid blocking UI. Another 
way to avoid blocking UI is to create a separate thread for UI, and WEBKIT 
code can still run in a single-thread. Now it's broken by database/storage 
code, which forces to use multiple threads for WEBKIT. In our WINCE port, we 
have implemented a single-threaded solution with WebCore::Timer. The patch 
has been post to https://bugs.webkit.org/show_bug.cgi?id=28019 . The patch 
is a bit out-of-date, due to changes in upstream. New patch will come soon. 
Please give some comments if you're interested.

There's a macro ENABLE_JSC_MULTIPLE_THREADS used in JSC. Probably there 
should also be a macro ENABLE_WEBCORE_MULTIPLE_THREADS. Or just use 
ENABLE_MULTIPLE_THREADS for all multi-threading code.

Best regards to everyone,

Yong Li 

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic