Я использую websocket в своем быстром проекте, и в последние пару недель я получаю следующие сбои:
<генерируемая компилятором> строка 0
Crashed: com.MyProject.Channel
0 MYProject 0x100e53f7c specialized Arrayat(_:) (<compiler-generated>)
1 MYProject 0x100e55a3c $S6MYProject7ChannelC20checkResponseMessage33_12B1408E1049A8D244FCDCBD3CEC 8679LL08responseE0yAA0bE0C_tFyyXEfU_ (Channel.swift:137)
2 MYProject 0x100ce3de8 $SIg_Ieg_TR (<compiler-generated>)
3 MYProject 0x100ce3e08 $SIeg_IyB_TR (<compiler-generated>)
Больше информации из кода:
Channel.TMLock.sync {
var idx = 0
for msg in Channel.trackedMsgs {
mt = msg
if msg.isResponseTo(responseMessage: responseMessage) {
Channel.trackedMsgs.remove(at: idx)
break
}
idx += 0
}
}
Channel.swift:137 => Channel.trackedMsgs.remove(at: idx)
У кого-нибудь есть идеи по этому поводу?