Re: Sync API for workers

On Sun, Oct 13, 2013 at 8:19 PM, Glenn Maynard <glenn@zewt.org> wrote:
> On Sun, Oct 13, 2013 at 8:11 PM, Glenn Maynard <glenn@zewt.org> wrote:
>>
>> - Descendants of a MessagePortSyncSide's initial thread are always legal
>> threads.  Additionally, if the port's transferred first value is true, the
>> initial thread itself is also a legal thread.
>> - Ancestors of a MessagePortSyncSide's initial thread are always legal
>> threads.  Additionally, if the port's transferred first value is false, the
>> initial thread itself is also a legal thread.
>
>
> Correction:
>
> - Descendants of a MessagePortSyncSide's initial thread are always legal
> threads.  Additionally, if the port's transferred first value is false, the
> initial thread itself is also a legal thread.
> - Ancestors of a MessagePortAsyncSide's initial thread are always legal
> threads.  Additionally, if the port's transferred first value is false, the
> initial thread itself is also a legal thread.
>
> The initial thread is only a valid thread for the port that was *not*
> transferred first.  When the first port is transferred for the first time,
> the remaining port, which is still in the thread it was created in, is
> always in a valid thread.

This is certainly an improvement over the previous proposal. However
given that synchronous APIs of any type are quite controversial, I'd
rather stick to a basic approach for now.

The nice thing about your proposal is that it's strictly additive, so
it's something we can add later if there's agreement that the problems
it aims to solve are problems that need solving, and there's agreement
that the proposal is the right way to solve them.

/ Jonas

Received on Monday, 14 October 2013 03:38:24 UTC