[whatwg] "offscreen canvas" /Access to canvas functionality from a worker

Jeremy Orlow jorlow at chromium.org
Fri Dec 11 11:02:54 PST 2009


On Fri, Dec 11, 2009 at 10:29 AM, Robert O'Callahan <robert at ocallahan.org>wrote:

> On Fri, Dec 11, 2009 at 2:30 AM, Jeremy Orlow <jorlow at chromium.org> wrote:
>
>> CanvasRenderingContext2Ds would never need to be shared between threads
>> because they're "cloned" when passed...so is your concern that the libraries
>> are only meant to ever be used from one thread?  Maybe I'm being naive, but
>> it would surprise me if that turned out to be an issue.
>
>
> In Gecko we build cairo configured to only be usable from one thread. This
> reduces locking overhead around global caches. We could change that
> decision, but that would impose a small penalty on normal rendering, so it's
> a trade-off.
>
> Resizing images was just one use.  I could easily imagine apps wanting to
>> generate more complex images on background threads without needing to
>> implement things like spline drawing, pattern filling, and text themselves.
>>
>
> Drawing text on a worker thread means making CSS font parsing, associated
> font objects, text shaping, and bidi processing all usable from multiple
> threads. That would be a much bigger problem for us than the actual
> drawing...
>

Good point.  Maybe that could be in a future version if it proved itself
useful.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/attachments/20091211/df3e4c1e/attachment-0002.htm>


More information about the whatwg mailing list