This is a save schedule without unowned, it has no cycles, so you don’t need unownedto break something.
a -> b means save b
backgroundQueue -> outerBlock -> self
| ^
V |
mainQueue -> innerBlock -----
A cycle is formed only when selfany of the blocks is saved.
Also note that even backgroundQueuesaves outerBlock, the block will be released after execution, so if you save, the save backgroundQueuecycle will not continue.
unowned ( )
a -x- b b, (unowned)
backgroundQueue -> outerBlock -x- self
| |
V x
mainQueue -> innerBlock -----
, self , , innerBlock .