Por que a Apple criou Concurrency no Swift (AsyncSequence)
(sobabear.com)A Apple introduziu no Swift um novo paradigma chamado Concurrency. O processamento assíncrono é tratado por meio da instrução for-await-in.
Antes, o Swift lidava com assincronicidade usando Closure (Block function). Depois, também surgiu o framework chamado Combine. Esse framework Combine também é a versão da própria Apple do RX de Erik Meijer.
Mas o problema dessas duas abordagens acima é a limitação do ARC, o método de GC do Swift. Por causa da chamada capture list, podiam ocorrer vazamentos de memória, ou seja, queria-se evitar a abordagem baseada em Closure. Então, assim como Erik Meijer criou o Reactive invertendo iterable (Sequence) e Iterator, a Apple, em vez de inverter isso, criou AsyncSequence (AsynscIterable) e AsyncIterator de forma assíncrona para tentar resolver o problema de vazamento de memória e, ao mesmo tempo, apresentar um novo paradigma de programação assíncrona.
Ainda não há comentários.