Xcode 为什么我的日志会打印这么多奇怪的字符,并把函数搞砸了';谁的产量?

Xcode 为什么我的日志会打印这么多奇怪的字符,并把函数搞砸了';谁的产量?,xcode,swift,keyboard,Xcode,Swift,Keyboard,我有一个函数,返回在第三方键盘上键入的最后一个单词: var lastWordTyped: String? { let proxy = self.textDocumentProxy as! UITextDocumentProxy if let documentContext = proxy.documentContextBeforeInput as NSString? { let length = documentContext.length if

我有一个函数,返回在第三方键盘上键入的最后一个单词:

var lastWordTyped: String? {
    let proxy = self.textDocumentProxy as! UITextDocumentProxy
    if let documentContext = proxy.documentContextBeforeInput as NSString? {
        let length = documentContext.length
        if length > 0 && NSCharacterSet.alphanumericCharacterSet().characterIsMember(documentContext.characterAtIndex(length - 1)) {
            let components = documentContext.componentsSeparatedByCharactersInSet(NSCharacterSet.alphanumericCharacterSet().invertedSet) as! [String]
            println(components)
            return components[components.endIndex - 1]
        }
    }
    return nil
}
出于某种原因,尽管该函数工作正常并返回正确的输出,但我偶然查看了日志中的输出,发现它正在破坏输出并多次输出(如下图所示)

这会导致我的键盘内存使用量增加吗?它会减慢速度吗

我怎样才能解决这个问题

编辑1:使用模拟器时,此错误不可再现


println
不同步,因此如果有多个线程调用您的代码,它们的输出可能会重叠


我建议用
NSLog(components)
替换
println(components)
,以便更好地了解实际情况。

谢谢,效果很好。我从来没有遇到过这个