On Nov 17, 2011, at 6:41 PM, Jonas Sicking <[email protected]> wrote:

> On Thu, Nov 17, 2011 at 6:05 PM, David Levin <[email protected]> wrote:
>> 
>> 
>> On Thu, Nov 17, 2011 at 5:05 PM, Jonas Sicking <[email protected]> wrote:
>>> 
>>> On Thu, Nov 17, 2011 at 2:07 PM, David Levin <[email protected]> wrote:
>>>> It seems like this mechanism would deadlock a worker if two workers send
>>>> each other a synchronous message.
>>> 
>>> Indeed. We can only allow child workers to block on parent workers.
>>> Never the other way around.
>> 
>> So the api would have to know who is listening to the other end of the port
>> and throw if it isn't a parent?
> 
> I'm not convinced that we can do this with ports in a sane manner.
> Only on dedicated workers. There you always know who is listening on
> the other end. I.e. only on the DedicatedWorkerGlobalScope/Worker
> interfaces.

I agree on this one. A big no-thanks to synchronous messaging over ports.

Still, dedicated workers to a parent seems doable.

I've proposed a different worker scope for lightweight threads. Dedicated 
workers are relatively heavy and so a few workers blocked on the parent is not 
outside of acceptability.

-Charles

Reply via email to