> On Aug 24, 2017, at 1:05 PM, Thomas via swift-evolution
> <[email protected]> wrote:
>
>>
>> On 24 Aug 2017, at 21:48, Marc Schlichte <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> Yes, I think it is mandatory that we continue on the callers queue after an
>> `await ` on some actor method.
>>
>> If you `await` on a non-actor-method though, you would have to changes
>> queues manually if needed.
>>
>> Any `actor` should have a `let actorQueue: DispatchQueue` property so that
>> we can call in these cases:
>>
>> ```await actorQueue.asyncCoroutine()``` as mentioned in the manifesto.
>
> Wouldn't that be really confusing though? That awaiting certain methods would
> bring us back to the actor's queue but awaiting others would require manual
> queue hopping? What if the compiler was to always generate the 'await
> actorQueue.asyncCoroutine()' queue hopping code after awaiting on an
> async/actor method?
Yes, it would be confusing. await should either always return to the same queue
or never do it. Otherwise it’s even more error-prone. I see the actor feature
as being just another demonstration of why solving the queue-hopping problem is
important for async/await to be useful.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution