汤晔

Results 2 issues of 汤晔

![image](https://user-images.githubusercontent.com/12050371/80171735-b78f0b00-861d-11ea-91ac-bb4f61824b2a.png) Use pod to directly reference the master branch code, running crash ![image](https://user-images.githubusercontent.com/12050371/80171757-c70e5400-861d-11ea-8511-b1b3891f8ec0.png) But there is no problem with the way of drag the .xcodeproj file. What is the difference...

2015-12-14 那天,swift-dev 邮件列表里有人在讨论 weak 属性的线程安全问题,其中有几位苹果工程师透露了自旋锁的 bug,对话内容大致如下: 新版 iOS 中,系统维护了 5 个不同的线程优先级/QoS: background,utility,default,user-initiated,user-interactive。高优先级线程始终会在低优先级线程前执行,一个线程不会受到比它更低优先级线程的干扰。这种线程调度算法会产生潜在的优先级反转问题,从而破坏了 spin lock。 具体来说,如果一个低优先级的线程获得锁并访问共享资源,这时一个高优先级的线程也尝试获得这个锁,它会处于 spin lock 的忙等状态从而占用大量 CPU。此时低优先级线程无法与高优先级线程争夺 CPU 时间,从而导致任务迟迟完不成、无法释放 lock。这并不只是理论上的问题,libobjc 已经遇到了很多次这个问题了,于是苹果的工程师停用了 OSSpinLock。 苹果工程师 Greg Parker 提到,对于这个问题,一种解决方案是用 truly unbounded...