看了眼新的日志,那个问题确定了 是升级后的Crash框架中对原add、removeObserver方法进行了方法替换,而替换方法里有互斥锁操作,跨线程进行对这部分共享资源进行了lock unlock 操作,因为键盘管理框架创建的线程在load、change的时候为了防止阻塞都是创建了新线程处理,还有的设置了0.1秒的延迟调用返回主线程,如果在这期间内线程内资源被lock或unlock,就会在释放的时候导致异常。
互斥锁使用注意事项
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 多线程三个特征:原子性、可见性以及有序性. 同步锁 /并发锁/ 读写锁,显示锁, ReentrantLock与Co...
- 第一组: 第二组:赵彩凤 微信小程序--侧边栏滑动特效(点击按钮侧边滑动) Wxml: ...搭建上下两层界面....