Have you considered using Operations, and an OperationQueue?
Setting maxConcurrentOperationCount = 1 will execute your operations sequentially.
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: