Size: a a a

Kotlin Community

2020 June 19

QH

Quantum Harmonizer in Kotlin Community
Евгений Воронюк (GreenTea)
Может есть какая-то тонкость в аннотировании параметров генериков?
Вангую @JvmSuppressWildcards
источник

ЕВ

Евгений Воронюк (Gre... in Kotlin Community
попробовал поставить над полем и в типе - не помогло
источник

BP

Bogdan Panchenko in Kotlin Community
источник

ЕВ

Евгений Воронюк (Gre... in Kotlin Community
Мне кажется это потому, что котлин навешивает эту аннотацию только у параметра конструктора
источник

BP

Bogdan Panchenko in Kotlin Community
Интересная штука
источник

ЕВ

Евгений Воронюк (Gre... in Kotlin Community
но не у поля или геттера
источник

ЕВ

Евгений Воронюк (Gre... in Kotlin Community
Так не прокатывает
источник

ЕВ

Евгений Воронюк (Gre... in Kotlin Community
Разобрался, это давняя проблема
https://youtrack.jetbrains.com/issue/KT-35843
источник

ЕВ

Евгений Воронюк (Gre... in Kotlin Community
С флажком компилятора -Xemit-jvm-type-annotations все работает
источник

D

Dmitry in Kotlin Community
launch(Dispatchers.Main) - Диспатчер, это в итоге контекст?
источник

D

Dmitry in Kotlin Community
А пустой контекст вообще потоки не переключает, просто вызывает все в том потоке, откуда вернулся вызов, верно?
источник

VP

Vladimir Petrakovich in Kotlin Community
Dmitry
launch(Dispatchers.Main) - Диспатчер, это в итоге контекст?
Да, диспатчер является контекстом
источник

D

Dmitry in Kotlin Community
Млн, это не очевидно, этого не хватает в джавадоке...
источник

AN

Alexander Nozik in Kotlin Community
Dmitry
launch(Dispatchers.Main) - Диспатчер, это в итоге контекст?
Это в данном случае добавка в контекст, он приплюсовывается к родительскому контексту.
источник

VP

Vladimir Petrakovich in Kotlin Community
Dmitry
А пустой контекст вообще потоки не переключает, просто вызывает все в том потоке, откуда вернулся вызов, верно?
Вроде того, да. А точнее, при отсутствии в контексте ContinuationInterceptor выполнение продолжается в том же потоке, где его вызвали.
источник

VP

Vladimir Petrakovich in Kotlin Community
А если он есть, то в потоке, определяемом этим интерсептором
источник

D

Dmitry in Kotlin Community
Вообщем я никак не ожидал, что когда позову лаунч в одном потоке, у меня содержимое начнет в других исполняться, потому что там были переключения...
источник

D

Dmitry in Kotlin Community
Ясно, спасибо..
источник

VP

Vladimir Petrakovich in Kotlin Community
Ещё есть такая фишка, что все стандартные билдеры задают диспатчер, если его нет
источник

VP

Vladimir Petrakovich in Kotlin Community
Dmitry
Вообщем я никак не ожидал, что когда позову лаунч в одном потоке, у меня содержимое начнет в других исполняться, потому что там были переключения...
Ну корутины - они такие, да
источник