Por qué Apple creó Concurrency en Swift (AsyncSequence)
(sobabear.com)Apple incorporó a Swift un nuevo paradigma llamado Concurrency. El procesamiento asíncrono se maneja mediante la sentencia for-await-in.
Antes, Swift manejaba la asincronía usando Closure (block function). Luego también apareció un framework llamado Combine. Este framework Combine también es una versión propia de Apple de RX de Erik Meijer.
Sin embargo, el problema de los dos métodos anteriores es la limitación de ARC, el método de GC de Swift. Debido a algo llamado capture list, podían producirse fugas de memoria; es decir, querían evitar el enfoque que usa Closure. Por eso, así como Erik Meijer creó Reactive invirtiendo iterable (Sequence) e Iterator, Apple, en lugar de invertir esto, creó AsyncSequence (AsynscIterable) y AsyncIteraotr de forma asíncrona para resolver el problema de las fugas de memoria y, al mismo tiempo, proponer un nuevo paradigma de programación asíncrona.
Aún no hay comentarios.