Sobes.tech
Junior — Middle

Vysvětlete koncept Cold v kontextu použití Combine ve Swift.

sobes.tech AI

Odpověď od AI

V Combine v Swiftu pojem Cold Publisher znamená, že vydavatel nezačne generovat a posílat hodnoty, dokud se k němu nepřihlásí odběratel.

To znamená, že každý odběratel obdrží svůj vlastní datový tok od okamžiku přihlášení a data nejsou předem generována.

Příklad:

let publisher = [1, 2, 3].publisher // Cold publisher

publisher.sink { print("Odběratel 1 obdržel: \($0)") }
publisher.sink { print("Odběratel 2 obdržel: \($0)") }

V tomto příkladu obdrží oba odběratelé všechna data od začátku, protože publisher je "studený" a začíná vysílat data až při přihlášení.