[whatwg] Canvas in workers
robert at ocallahan.org
Sun Oct 13 16:27:09 PDT 2013
On Sun, Oct 13, 2013 at 6:07 PM, David Bruant <bruant.d at gmail.com> wrote:
> Le 13/10/2013 23:33, Robert O'Callahan a écrit :
>> bool commit();
>> Boolean as return value for success? :-s
>> A promise instead maybe? throw instead of false at least?
>> In any case, it looks like commit could be a long operation (tell
>> me if I'm wrong here. Do you have numbers on how long it
>> takes/would take?), having it async sounds reasonable.
>> "commit" does not need to be async, it doesn't have to block in practice.
> Just so that I better understand how commit works, what happens in this
> // draw things
> // draw other things
Two frames get queued as eligible for presentation. Which ones reach the
screen is unspecified of course.
> Personally I don't see this as a violation of run-to-completion
>> semantics. The important thing is that the dimensions of the WorkerCanvas
>> (and any other state observable by the worker) do not change except during
>> the call to commit(). Effectively commit() itself performs the change.
> Hmm... Interesting point of view...
> That's the only way to learn that the dimensions have changed? Via
> commit() throwing an error/returning false? It feels very ad-hoc. It
> doesn't seem to scale very well to other reasons why commit() might fail.
What other reasons are there?
I also imagine that the normal pattern will be "draw then commit", so it
> means that you always spend efforts drawing without ever knowing if what
> you're drawing is ever going to end up on screen; which feels like a waste
> of resources.
I don't see this as being a problem, or at least no more of a problem than
it already is.
> Of course it's OK for DOM API implementations to change state :-).
> I don't understand what you mean here.
It's OK for calling DOM methods to change state visible to script.
What happens to WorkerCanvas in the canvas element is removed from the
> document or display:hidden-ed?
Jtehsauts tshaei dS,o n" Wohfy Mdaon yhoaus eanuttehrotraiitny eovni
le atrhtohu gthot sf oirng iyvoeu rs ihnesa.r"t sS?o Whhei csha iids teoa
stiheer :p atroa lsyazye,d 'mYaonu,r "sGients uapr,e tfaokreg iyvoeunr,
'm aotr atnod sgaoy ,h o'mGee.t" uTph eann dt hwea lmka'n? gBoutt uIp
waanndt wyeonut thoo mken.o w *
More information about the whatwg