[swift-users] Alternative to UnicodeScalar
Rien
Rien at Balancingrock.nl
Sat Apr 8 13:58:27 CDT 2017
Server-side is usually UTF-8 (not always), so often you don’t really need strings.
As an aside, time measurements are difficult, especially when IO is involved there may be thread switches or locks.
I have written some parsers (UTF-8 based) and not yet encountered performance problems. (though faster is always better)
Regards,
Rien
Site: http://balancingrock.nl
Blog: http://swiftrien.blogspot.com
Github: http://github.com/Balancingrock
Project: http://swiftfire.nl - A server for websites build in Swift
> On 08 Apr 2017, at 18:19, Proyb P via swift-users <swift-users at swift.org> wrote:
>
> I have found this took about 0.001s to print 256 characters
> Compare to Python took 0.000016s to print 256 characters, see F8 code and have modify to run only one call instead of 1000 iterations.
> https://gist.github.com/anonymous/18e372e8d0173e77b5c405920d4d3080
>
> As this is frequently use for server-side swift that will definitely affected by expensive call, are there any alternative solution for converting Int to character close to Python timing?
>
> import Foundation
> var display: String = ""
>
> func printTimeElapsedWhenRunningCode(title: String, operation: ()->()) {
> let startTime = CFAbsoluteTimeGetCurrent()
> operation()
> let timeElapsed = CFAbsoluteTimeGetCurrent() - startTime
> print("Time elapsed for \(title): \(timeElapsed) s")
> }
>
> printTimeElapsedWhenRunningCode(title: "s1()") {
> let startingValue = Int(("A" as UnicodeScalar).value) // 65
> for i in 0 ..< 256 {
> print(Character(UnicodeScalar(i + startingValue)!))
> }
> }
> _______________________________________________
> swift-users mailing list
> swift-users at swift.org
> https://lists.swift.org/mailman/listinfo/swift-users
More information about the swift-users
mailing list