qiniu / objc-sdk

Qiniu Resource (Cloud) Storage Objective-C SDK for Mac/iOS
http://developer.qiniu.com
MIT License
435 stars 197 forks source link

QNServerConfigSynchronizer Token 野指针崩溃 #423

Open lyandy opened 1 year ago

lyandy commented 1 year ago

崩溃sentry堆栈:https://app-sentry.taou.com/share/issue/8c4977e7073c4e0996b1248f93025c37/

image

通过分析发现是 QNServerConfigSynchronizer赋值Token崩溃

image

进一步分析发现,Token全局静态变量,全局静态变量赋值,如果不加锁多线程下一样会出现野指针 over-release崩溃

image

其实这里的 Hosts 变量也一样,需要加锁,做多线程安全

YangSen-qn commented 1 year ago

感谢您的反馈

lyandy commented 1 year ago

感谢您的反馈

麻烦看一下我提交的pr,fix了此问题。