timer
This commit is contained in:
parent
9538b50f84
commit
e71f6cd7d7
@ -37,10 +37,19 @@ import Foundation
|
|||||||
|
|
||||||
DispatchQueue.global(qos: .userInitiated).async {
|
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 concurrentQueue = DispatchQueue(label: "com.mva.clientparam", attributes: .concurrent)
|
||||||
let group = DispatchGroup()
|
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 {
|
for param in paramsModelList {
|
||||||
group.enter()
|
group.enter()
|
||||||
|
|
||||||
@ -55,11 +64,7 @@ import Foundation
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
group.notify(queue: concurrentQueue, work: completionItem);
|
||||||
let dispatchAfterTime = DispatchTimeInterval.seconds(Int(timeout))
|
|
||||||
_ = group.wait(timeout: .now() + dispatchAfterTime)
|
|
||||||
|
|
||||||
completionHandler(paramsList)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user