> On 23 Aug 2017, at 11:28, Thomas via swift-evolution 
> <swift-evolution@swift.org> wrote:
> 
> 1. What happens to the actor's queue when the body of a (non void-returning) 
> actor method awaits away on some other actor? Does it suspend the queue to 
> prevent other messages from being processes? It would seem to be the expected 
> behavior but we'd also need a way to detach from the actor's queue in order 
> to allow patterns like starting a long-running background operation and still 
> allowing other messages to be processed (for example, calling a cancel() 
> method). We could still do these long-running operations by passing a 
> completion block to the method, rather than via its return value. That would 
> clarify this goes beyond this one actor message, but we're back to the old 
> syntax...

Maybe that's where Futures would come in handy? Just return a Future from the 
method so callers can await long-running operations.

Thomas

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to