objc-sdk icon indicating copy to clipboard operation
objc-sdk copied to clipboard

LCFile.upload 在 Swift Cocurrency iOS 15 + iPhone 7 上阻塞

Open iblacksun opened this issue 2 years ago • 3 comments

如题,最新的 13.9.3 SDK,发现在 iPhone 7 或者同代手机上,iOS 15 环境中使用 Concurrency,会死锁导致 App 卡死,最后被 watchdog 干掉(不确定如果同样手机升级到 iOS 16 是否还有问题)。

示例代码: Task { ...... await file.upload() }

debug 发现代码卡死在 LCURLRequestSerialization line 306,此方法一直没返回。

发现问题后我 extension LCFile,重写一个 asyncUpload 方法,并且方法签名加入 @MainActor 修饰可以规避这个问题。

具体原因请你们排查,猜测在部分老旧手机上因 CPU 限制,导致可申请队列数很小。

iblacksun avatar Jun 05 '23 03:06 iblacksun

感谢您的反馈。请问该问题是否只在 iPhone 7 设备上出现?

zapcannon87 avatar Jun 19 '23 07:06 zapcannon87

目前是发现那一代(包含 7 pluse),不确定 8 及以后如何 @zapcannon87

iblacksun avatar Jun 19 '23 07:06 iblacksun

@zapcannon87 请问 Swift SDK 还有计划更新吗?现在 Swift SDK 急需 Status 相关能力,OC SDK 到处都是 lock 和 semaphore 实在是不优雅

iblacksun avatar Nov 06 '23 07:11 iblacksun