This commit is contained in:
Suresh, Kamlesh 2021-01-08 17:02:10 -05:00
parent 9538b50f84
commit e71f6cd7d7

View File

@ -37,10 +37,19 @@ import Foundation
DispatchQueue.global(qos: .userInitiated).async {
let timeout = clientParameters.optionalCGFloatForKey("timeout") ?? 60.0
let timeout = clientParameters.optionalCGFloatForKey("timeout") ?? 30.0
let concurrentQueue = DispatchQueue(label: "com.mva.clientparam", attributes: .concurrent)
let group = DispatchGroup()
let completionItem = DispatchWorkItem {
completionHandler(paramsList);
}
let dispatchAfterTime = DispatchTimeInterval.seconds(Int(timeout))
concurrentQueue.asyncAfter(deadline: .now() + dispatchAfterTime, execute: completionItem)
for param in paramsModelList {
group.enter()
@ -55,11 +64,7 @@ import Foundation
}
}
}
let dispatchAfterTime = DispatchTimeInterval.seconds(Int(timeout))
_ = group.wait(timeout: .now() + dispatchAfterTime)
completionHandler(paramsList)
group.notify(queue: concurrentQueue, work: completionItem);
}
}