Hi, WebKit.

There are several implementations of threads, tasks and cross thread
communication. e.g. FileThread, DatabaseThread and StorageThread perform
blocking IO asynchronously and invoke callbacks using
ScriptExecutionContext. Each of these implementation is pretty similar, but
there is no code sharing at all.

So, my team at Company 100 is trying to refactor cross thread
communication. We wrote an API proposal and modified some thread code to
use our new API.

As the first step, we added two new abstractions for cross thread
communcation:

1) TaskThread is our new abstraction for the task thread. FileThread,
DatabaseThread and other task threads reuse the code by inheriting from
TaskThread.

2) We also added CrossThreadFunction. It's used to pass a task to the task
thread and invoke callbacks. CrossThreadFunction is similar to
WTF::Function but it has some additional features. e.g., cross-thread
parameter copying and ref counting.

Please refer to the following bug for details:

https://bugs.webkit.org/show_bug.cgi?id=92365

We welcome feedbacks on our work.

Thanks.

-- 
====================
Kwonjin Jeong
Computer Scientist
Company 100, Inc.
Phone: +82-10-9528-2581
====================
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to