async ios

This commit is contained in:
shenlong-tanwen
2025-09-25 03:57:03 +05:30
parent ae595f2947
commit 13abe14142
10 changed files with 150 additions and 75 deletions
+12
View File
@@ -0,0 +1,12 @@
func dispatch<T>(
qos: DispatchQoS.QoSClass = .default,
completion: @escaping (Result<T, Error>) -> Void,
block: @escaping () throws -> T
) {
DispatchQueue.global(qos: qos).async {
let result = Result { try block() }
DispatchQueue.main.async {
completion(result)
}
}
}