Xcode is not helping me with any of the required refactoring. The convert tool throws many errors but no proposition.
I have tried to explore the New Dispatch headers with no luck. DISPATCH_SOURCE_TYPE_TIMER can’t be found… ok so It seems to be replaced with a protocol DispatchSourceTimer and … no initializer… I think I don’t yet catch with the whole philosophy of this new version.
let timer = DispatchSource.makeTimerSource(queue: queue)
timer.scheduleRepeating(wallDeadline: .now(), interval: .seconds(1))
timer.setEventHandler {
// Do something useful
}
timer.resume()
Isn’t it nice? It is a pity it is not well documented yet.
···
On Oct 16, 2016, at 11:25 AM, Thierry Passeron via swift-users <swift-users@swift.org> wrote:
Xcode is not helping me with any of the required refactoring. The convert tool throws many errors but no proposition.
I have tried to explore the New Dispatch headers with no luck. DISPATCH_SOURCE_TYPE_TIMER can’t be found… ok so It seems to be replaced with a protocol DispatchSourceTimer and … no initializer… I think I don’t yet catch with the whole philosophy of this new version.
Xcode is not helping me with any of the required refactoring. The convert tool throws many errors but no proposition.
I have tried to explore the New Dispatch headers with no luck. DISPATCH_SOURCE_TYPE_TIMER can’t be found… ok so It seems to be replaced with a protocol DispatchSourceTimer and … no initializer… I think I don’t yet catch with the whole philosophy of this new version.
You are right it’s a shame how poorly it is documented at the moment. There are many overloads of « scheduleRepeating() » with different parameters and the headers are not that helpful…
Thanks again.
···
Le 17 oct. 2016 à 00:32, Hooman Mehr <hooman@mac.com> a écrit :
On Oct 16, 2016, at 11:25 AM, Thierry Passeron via swift-users <swift-users@swift.org <mailto:swift-users@swift.org>> wrote:
Hello All,
I’m in the process of migrating older code to Swift 3 and I’m stuck on this one.
How do you create a timer dispatch source?
Old code:
let source = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue)
let timer = DispatchSource.makeTimerSource(queue: queue)
timer.scheduleRepeating(wallDeadline: .now(), interval: .seconds(1))
timer.setEventHandler {
// Do something useful
}
timer.resume()
Isn’t it nice? It is a pity it is not well documented yet.
Xcode is not helping me with any of the required refactoring. The convert tool throws many errors but no proposition.
I have tried to explore the New Dispatch headers with no luck. DISPATCH_SOURCE_TYPE_TIMER can’t be found… ok so It seems to be replaced with a protocol DispatchSourceTimer and … no initializer… I think I don’t yet catch with the whole philosophy of this new version.