Size: a a a

Kotlin Community

2019 November 12

BP

Bogdan Panchenko in Kotlin Community
Quantum Harmonizer
Это баг или фича? inferred type CapturedTypeConstructor(*) is not a subtype of Serializable
Багофича(
источник

BP

Bogdan Panchenko in Kotlin Community
kallibr44
я один не понимаю почему у тебя вызов функции до её объявления?
Процедурщина = выкл
источник

BP

Bogdan Panchenko in Kotlin Community
А зачем звездочка? Я ее использую то к для внутрених структур
источник

BP

Bogdan Panchenko in Kotlin Community
А так использую дженерики либо Any
источник

BP

Bogdan Panchenko in Kotlin Community
А допер, ну тут явный баг
источник

КР

Кирилл Романенко in Kotlin Community
Алексей Овсянников
Я к тому, что там можно посмотреть, где оно пролетает и хотя бы примерно понять, почему оно пролетает мимо. Например:)
Короче, воткнул костыляку. У меня такой блок есть в аппке - я там логирую ошибки и снова throw-влю. Добавил такую же перед отправкой месседжа в сеть - вроде стало норм. Но это какая-то дичь.
источник

КР

Кирилл Романенко in Kotlin Community
Кирилл Романенко
Короче, воткнул костыляку. У меня такой блок есть в аппке - я там логирую ошибки и снова throw-влю. Добавил такую же перед отправкой месседжа в сеть - вроде стало норм. Но это какая-то дичь.
А, я не заглянул внутрь. Это перезаписывает рутовый экзепшен-хендлер. Тогда не подходит.
источник

АО

Алексей Овсянников in Kotlin Community
Кирилл Романенко
А, я не заглянул внутрь. Это перезаписывает рутовый экзепшен-хендлер. Тогда не подходит.
ну почему, можно просто на предыдущий опрокидывать
источник

АО

Алексей Овсянников in Kotlin Community
Там же есть геттер соответствующий - берете текущий, ставите свой, ставите предыдущий
источник

КР

Кирилл Романенко in Kotlin Community
Алексей Овсянников
Там же есть геттер соответствующий - берете текущий, ставите свой, ставите предыдущий
Хм, а это идея. Типо
val oldHandler = ...
try {
   Thread.setDefaultUncaughtExceptionHandler { _, _ -> }
   ...
} catch (e: Exception) {
   ...
} finally {
   Thread.setDefaultUncaughtExceptionHandler(oldHandler)
}
источник

АО

Алексей Овсянников in Kotlin Community
Ага
источник

АО

Алексей Овсянников in Kotlin Community
Костыль Костылевич Костылев, но работать будет, хотя и сломает логику отлова и по-умолчанию
источник

AN

Alexander Nozik in Kotlin Community
В кторе бывает, что ошибка в io промахивается мимо корутин ктора из-за того что случается где-то в пулинге. Хрен отловишь.
источник

КР

Кирилл Романенко in Kotlin Community
А не, не работает. Всё же экзепшен кладёт приложуху. Как будто он летит с опазданием, после finally.
источник

КР

Кирилл Романенко in Kotlin Community
Кирилл Романенко
А тем временем баг так и не отпускает. Воспроизводится он если отправляешь запрос и отключаешь сеть. Вот более полный лог https://gist.github.com/indrih17/7b80681751b05cf62605f7fa6b1be01b

Кто-нибудь может объяснить, каким образом может крашиться приложение, если место, которое выбрасывает исключение, обёрнуто в трай кетч?
Там их несколько.
источник

АО

Алексей Овсянников in Kotlin Community
Кирилл Романенко
А не, не работает. Всё же экзепшен кладёт приложуху. Как будто он летит с опазданием, после finally.
Ох...
источник

АО

Алексей Овсянников in Kotlin Community
Ну, я говормил - поймите сначала, где оно там пролетает
источник

AN

Alexander Nozik in Kotlin Community
Кирилл Романенко
Там их несколько.
Да, точно, у меня на вебсокетах очень похожее что-то было. Там где-то в глубине ио пулинг ломается и хоть убейся.
источник

AN

Alexander Nozik in Kotlin Community
Случайно бинарными блоками нигде не играетесь?
источник

КР

Кирилл Романенко in Kotlin Community
Alexander Nozik
Случайно бинарными блоками нигде не играетесь?
Ну у меня tcp, я достаточно близок к бинарности. :)
источник