Ian Hickson wrote:
On Wed, 20 Aug 2008, Jonas Sicking wrote:
Do we really need the SharedWorker interface. I.e. couldn't we just return a MessagePort?

We could. It would mean either putting onerror on all message ports, or not reporting error information for shared workers. Actually even if we did put onerror on ports, it would be difficult to define which ports actually get the error events.

It would also mean not using a constructor, but that's fine.

Finally, it would make extending the interface later much harder if we found that it was useful to allow different users of the shared worker to control something.

Anyone else have any opinions on this?

Yeah, I don't feel strongly either way here. It feels "cleaner" to not have separate SharedWorker instances for each user of a shared worker, but there are also downsides with not doing that (like onerror and other future properties that we might want).

So I'm fine either way.

I think startConversation makes as much sense on shared workers as dedicated ones, so moving that API up to Worker/WorkerGlobalScope seems like a good idea.

startConversation is on the port(s) in the shared worker case. I'm not sure what it would mean on the worker or global scope in the shared case, since there's no target without the port in that case.

Ah, of course.

If we keep the constructors (see first paragraph), I would prefer the syntax "new Worker" over "new DedicatedWorker".

That's fine, I can change the base to be AbstractWorker and then have Worker and SharedWorker as the interfaces inheriting from it.

Sounds good to me.

/ Jonas

Reply via email to