XCode14线程警告问题

这篇具有很好参考价值的文章主要介绍了XCode14线程警告问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近收到了一些iOS16系统下的报错,DSYM之后发现是阿里云日志上传的地方出现了警告,调试的时候给出了警告,且这个问题为非必现,占比大概10%~20%,问题如下:

Thread running at QOS_CLASS_USER_INITIATED waiting on a lower QoS thread running at 
QOS_CLASS_DEFAULT. Investigate ways to avoid priority inversions

这个问题意思大概就是,我们运行在 QOS_CLASS_USER_INITIATED的线程,前方正在运行着一个QOS_CLASS_DEFAULT的低QoS线程,这样有可能造成优先级反转。知道问题之后,修复的方法就清晰了,我们这里修改一下当前线程的优先级

dispatch_queue_t referQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0); //降低线程优先级
dispatch_async(referQueue, ^{
    [traker send:dic];
});

重复测试多次,发现没有警告了。

顺便解释一下什么事线程的优先级反转和线程的优先级问题!

1、优先级反转
当高优先级的工作依赖于较低优先级的工作时,或者它成为低优先级工作的结果,则会发生优先级反转。结果,可能会发生阻塞、旋转和轮询。
在同步工作的情况下,系统将通过在反转期间提高低优先级工作的QoS来自动解决优先级反转。这将发生在以下情况:
在串行队列上调用dispatch_sync()和dispatch_wait()时。
当调用pthread_mutex_lock()时,互斥对象被一个带有较低QoS的线程所控制。在这种情况下,持有锁的线程被提高到调用者的QoS。但是,这个QoS升级不会出现在多个锁之间。
在异步工作的情况下,系统将尝试解决串行队列中出现的优先级反转

2、线程的优先级文章来源地址https://www.toymoban.com/news/detail-515443.html

 DISPATCH_QUEUE_PRIORITY_HIGH 2  高
 DISPATCH_QUEUE_PRIORITY_DEFAULT 0 默认
 DISPATCH_QUEUE_PRIORITY_LOW -2 低
 DISPATCH_QUEUE_PRIORITY_BACKGROUND INT16_MIN 2 后台优先级

到了这里,关于XCode14线程警告问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • iOS问题记录 - Xcode 14安装低版本iOS模拟器(持续更新)

    最近客服跟我反馈说,有一个用户打开老项目的iOS App闪退,我回顾了下这项目上次发布改了啥,发现就改了一些文本和链接,这就很奇怪。到后台查了下这个用户的设备信息和应用版本,用的是手机型号是iPhone X,系统版本是iOS 11.2,以及最新版的应用。 很长时间都忙着Flu

    2024年02月15日
    浏览(39)
  • 使用Xcode 14.3 打包,在iOS13 系统上闪退问题

    Date/Time:           2023-04-21 16:49:28.3937 +0800 Launch Time:         2023-04-21 16:49:27.7110 +0800 OS Version:          iPhone OS 13.4.1 (17E262) Release Type:        User Baseband Version:    1.05.28 Report Version:      104 Exception Type:  EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Exception No

    2024年02月06日
    浏览(55)
  • iOS —— xcode14兼容 iOS9~iOS10系统

    xcode14兼容 iOS9~iOS10系统 在Xcode升级到Xcode14以后,系统的支持版本升级到了iOS11.0。但是我们项目需要支持iOS9,脚本打包错误提示: The iOS deployment target \\\'IPHONEOS_DEPLOYMENT_TARGET\\\' is set to 9.0, but the range of supported deployment target versions is 11.0 to 16.2.99. 下面记录适配过程。 适配过程同

    2024年02月09日
    浏览(37)
  • IOS开发-XCode14介绍与入门

    iOS开发工具一直有个毛病,就是新版本的开发工具的总会有一些奇奇怪怪的bug。比如在我的Mac-Pro(2.3 GHz 八核Intel Core i9)中iOS stimulator就无法使用(MyMac是可用的)。但是真机就可以正常使用。也不知道是XCODE14是只对本家M系芯片的优化导致Intel用不了还是咋的,很是苦恼。

    2024年02月13日
    浏览(31)
  • MacOS 14 系统 XCode15、 Flutter 开发 IOS

    MacOS14 Sonoma 安装 Flutter 开发环境 MacOS 系统 Flutter开发Android 环境配置 MacOS 系统 Flutter开发IOS 环境配置​​​​​​​ 前面我们已经在MacOS14 M3芯片上安装好 Flutter环境,包括开发工具 VsCode 、Android Stuiod,那么flutter如何开发IOS呢? 我们知道IOS开发语言为 objcet-c或者 swift,Flutter是

    2024年02月03日
    浏览(55)
  • iOS Xcode14 Charts集成时编译报错

    4.1.0解决了这两个问题 下载4.1.0的demo, 然后手动导入Charts Type ‘ChartDataSet’ does not conform to protocol ‘RangeReplaceableCollection’ Unavailable instance method ‘replaceSubrange(_:with:)’ was used to satisfy a requirement of protocol ‘RangeReplaceableCollection’ 解决方案: 在上面的扩展中加上下面的方法 参考

    2024年02月16日
    浏览(34)
  • Xcode14.3.1真机调试iOS17的方法

    Hello,大家好我是咕噜铁蛋!Xcode 是苹果官方开发工具,它提供了完整的开发环境和工具集,支持开发 iOS、macOS、watchOS 和 tvOS 应用程序。对于 iOS 开发者来说,Xcode 是必备的工具之一。而随着 iOS 系统的不断更新和升级,Xcode 也在不断地升级和改进,确保最好的开发体验。今

    2024年02月01日
    浏览(42)
  • Xcode 14.3.1 调试 iOS17 真机设备方法

            最近遇到了一个问题,需要在 Xcode 14.3.1 下调试 iOS 17 设备,但是 SupportDevice 目录中的支持文件最高只到 16.4。         查询官网的SDK支持列表发现,iOS 17 需要Xcode15以上的版本,而且抛弃了 SupportDevice的方式,但是因为我们原来的代码比较老,不支持高版本 Xcode。  

    2024年02月05日
    浏览(32)
  • Xcode14.3.1 真机调试iOS17的方法(无iOS17 DeviceSupport)

    由于iOS17需要使用Xcode15 才能调试,而当前Xcode15都是beta,正式版还未出,那么要真机调试iOS17的方式一般有两种: 方法一: 一种是下载新的Xcode15 beta版 (但Xcode包一般比较大,好几个G,甚至上10G,下载速度太慢,安装还会占用内存较大,对于内存较小的电脑就不太实用) 方

    2024年02月07日
    浏览(33)
  • 手机升级到iOS15.8后无法在xcode(14.2)上真机调试

     之前手机是iOS14.2的系统,在xcode上进行真机测试运行良好,因为想要使用Xcode的Instruments功能,今天将系统更新到了iOS15.8   ,结果崩了 说是Xcode和手机系统不兼容不能进行真机测试。在网上查了好些方法,靠谱的就是下载相关版本的真机包。但是~~ 找了一圈发现目前并没

    2024年02月04日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包