美文网首页
swift报错Fatal error: UnsafeMutabl

swift报错Fatal error: UnsafeMutabl

作者: is_E | 来源:发表于2020-05-20 14:33 被阅读0次

    这个问题是由多个线程同时修改数组引起的,是个线程安全问题。

    解决办法:

    1.修改数组在同步队列中

    let queue = DispatchQueue(label:myqueue)

    queue.sync {

    myArray.append(...)

    }

    2.在数组修改前后加锁

    objc_sync_enter(self)

    myArray.append(...)

    objc_sync_exit(self)

    此外,不加锁也可能造成以下问题引起闪退

    1、malloc: Heap corruption detected, free list is damaged at 0x600000fb42d0

    2、Thread 83: EXC_BAD_ACCESS (code=1, address=0x3eadddea39a0)

    相关文章

      网友评论

          本文标题:swift报错Fatal error: UnsafeMutabl

          本文链接:https://www.haomeiwen.com/subject/fttnohtx.html