Skip to content

Instantly share code, notes, and snippets.

@hsusmita
Created February 14, 2018 16:47
Show Gist options
  • Save hsusmita/d4254d839869a93f995348f3d7647499 to your computer and use it in GitHub Desktop.
Save hsusmita/d4254d839869a93f995348f3d7647499 to your computer and use it in GitHub Desktop.
//Create an observer
let signalObserver = Signal<Int, NoError>.Observer(
value: { value in
print("Time elapsed = \(value)")
}, completed: {
print("completed")
}, interrupted: {
print("interrupted")
})
//Create an a signal
let (output, input) = Signal<Int, NoError>.pipe()
//Send value to signal
for i in 0..<10 {
DispatchQueue.main.asyncAfter(deadline: .now() + 5.0 * Double(i)) {
input.send(value: i)
}
}
//Observe the signal
output.observe(signalObserver)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment