Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Task {
- var cancelled = false
- func cancel() {
- cancelled = true
- }
- static func dispatch_after(deadline: DispatchTime, on targetQueue: DispatchQueue, execute work: @escaping () -> ()) -> Task {
- let task = Task()
- targetQueue.asyncAfter(deadline: deadline) {
- if !task.cancelled {
- work()
- }
- }
- return task
- }
- }
- let task = Task.dispatch_after(deadline: DispatchTime.now()+2, on: DispatchQueue.main) {
- print("yoyo")
- }
- task.cancel()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement