UITextView刷新非常慢

时间:2017-06-29 09:13:33

标签: ios swift uitextview

我写了一个函数来显示midi事件。 MIDI输入设备每25ms发送一个音符。 在我的应用程序执行一段时间后,uitextview刷新非常慢。

有谁知道如何解决这个问题? 我想在获得MIDI事件后更新UI。

谢谢。

func MyMIDIReadBlock(packetList: UnsafePointer<MIDIPacketList>, srcConnRefCon: UnsafeMutableRawPointer?) -> Swift.Void {
    let packets = packetList.pointee

    let packet:MIDIPacket = packets.packet

    var ap = UnsafeMutablePointer<MIDIPacket>.allocate(capacity: 1)
    ap.initialize(to:packet)
    var p = ap.pointee
    for _ in 0 ..< packets.numPackets {
        p = ap.pointee
        str_event = handle(p)
        //show_note_event(event:str_event)


        DispatchQueue.main.async{
            //self.current_note_index.text = self.str_event
            self.show_input_event.text.append(self.str_event)  //append string to uitextview
            let range = NSMakeRange(self.show_input_event.text.characters.count - 1, 1)
            self.show_input_event.scrollRangeToVisible(range)

        }
        ap = MIDIPacketNext(ap)
    }
}

0 个答案:

没有答案