Swift:UnsafeMutablePointer.deinitialize在附加到数组时带有负数的致命错误

Cra*_*lot 18 video ios avassetexportsession swift

下面的代码生成此错误(附加到exporters):

致命错误:UnsafeMutablePointer.deinitialize with negative count

    var exporters = [AVAssetExportSession]()

    let exporter = AVAssetExportSession(asset: mainComposition, presetName: AVAssetExportPresetHighestQuality)!
    exporter.videoComposition = videoComposition
    exporter.outputFileType = AVFileTypeMPEG4
    exporter.outputURL = exportURL
    exporter.shouldOptimizeForNetworkUse = true
    exporters.append(exporter)
Run Code Online (Sandbox Code Playgroud)

StackOverflow上的其他帖子对UnsafeMutablePointer.deinitialize这个问题没有太多了解,这不会一直发生.

有任何想法吗?

Ste*_*ert 28

我有一个类似的错误,问题是由多个线程同时修改数组引起的.在串行调度队列中包装追加调用解决了它.

    let serialQueue = DispatchQueue(label: "myqueue")

    serialQueue.sync {
        exporters.append(exporter)
    }
Run Code Online (Sandbox Code Playgroud)