Standard library source code already includes internal atomic counters. Introducing these apparently is on the agenda but post Swift 4.0 as part of a general language level support for concurrency. For now, the preferred API for such things is GCD (Grand Central Dispatch) provided through Dispatch module on macOS and Linux.
That's what I'm currently doing:
And for my case, performance is not a concern, but this seems like it's very expensive. Perhaps the compiler magically optimizes this down to an atomic instruction, but I doubt it.
BTW, is there any easy way to see the generated assembly? Seems to be a missing feature in Xcode.
On Nov 22, 2016, at 10:30 , Hooman Mehr <email@example.com> wrote:
On Nov 21, 2016, at 7:55 PM, Rick Mann via swift-users <firstname.lastname@example.org> wrote:
A lot of architectures provide CPU support for atomic increment and the like. <stdatomic.h> does, too, but most of it is unavailable in Xcode 8.1.
Is there a Swift AtomicInteger? Is that worth adding to the language?
swift-users mailing list