Files
immich/mobile/ios/Runner/Core/ImmichPlugin.swift
shenlong-tanwen 13abe14142 async ios
2025-09-29 00:10:34 +05:30

13 lines
301 B
Swift

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)
}
}
}