Size: a a a

Programming Offtop

2021 March 03

AN

Alexander Nozik in Programming Offtop
Iaroslav Postovalov
сопромат надо было учить
Сопромат тут не при чем. Сплошная экономика
источник

AM

Andrew Mikhaylov in Programming Offtop
Vladimir Petrakovich
Каждый раз новый?
Таскаю из проекта в проект. Не утверждаю, что это самый эффективный способ, но в мобилках и требование к нему пониже, чем у вас там, потому с этим и трудностей не возникает.
источник

AD

Aleksey D. in Programming Offtop
источник

AM

Andrew Mikhaylov in Programming Offtop
Какой интересный аккаунт, прям в гору чатов позалетала, даже к гармонайзеру в личи.
источник

I

Igor in Programming Offtop
Ну котокапча уверена что это не человек 🤨
источник

КР

Кирилл Романенко... in Programming Offtop
@ilmirus мб ты в курсе?
источник

КР

Кирилл Романенко... in Programming Offtop
Переслано от Кирилл Романенко...
Сейчас увидел, что suspend fun main внутри реализуется за счёт runSuspend. Появлось несколько вопросов:
1. Почему это апи помечено internal?
2. Если этот алгоритм блокировки лучше, чем runBlocking, то почему для jvm реализация runBlocking не такая? А если не лучше, по почему не использовать сразу runBlocking?
источник

I

Ilmir in Programming Offtop
Кирилл Романенко
Переслано от Кирилл Романенко
Сейчас увидел, что suspend fun main внутри реализуется за счёт runSuspend. Появлось несколько вопросов:
1. Почему это апи помечено internal?
2. Если этот алгоритм блокировки лучше, чем runBlocking, то почему для jvm реализация runBlocking не такая? А если не лучше, по почему не использовать сразу runBlocking?
Потому что это АПИ используется только из сгенерированного кода.
источник

I

Ilmir in Programming Offtop
runBlocking использовать нельзя, потому что он находится в библиотеке. А runSuspend - в стандартной библиотеке.
источник

КР

Кирилл Романенко... in Programming Offtop
Ilmir
runBlocking использовать нельзя, потому что он находится в библиотеке. А runSuspend - в стандартной библиотеке.
Окей, но какой алгоритм лучше? Или дешевле? У них же должна быть хоть какая-то разница.
Сейчас запустил просто обе функции по 10 раз в jmh с прогревом в 5 запусков - runSuspend показывает себя куда лучше:
runBlocking = 0,010 ±(99.9%) 0,001 ms/op [Average]
runSuspend = 0,007 ±(99.9%) 0,001 ms/op [Average]

Я понимаю что runSuspend доступен только в jvm, но почему тогда реализация runBlocking на jvm не проксирует runSuspend?
источник

КР

Кирилл Романенко... in Programming Offtop
А, стоп, так вроде ж и runBlocking только в jvm-е есть...
источник

КР

Кирилл Романенко... in Programming Offtop
Тогда мне тем более не понятно. :)
источник

AK

Anton Korotkikh in Programming Offtop
в пистон паттерн матчинг завезли, хм...

https://docs.python.org/3.10/whatsnew/3.10.html#pep-634-structural-pattern-matching
источник

I

Igor in Programming Offtop
Вот ведь, все люди как люди, ПМ затаскивают потихоньку
Один котлин какой-то отбитый, думают что smartcast это замена
источник

OY

Oleg Yukhnevich in Programming Offtop
Кирилл Романенко
Переслано от Кирилл Романенко
Сейчас увидел, что suspend fun main внутри реализуется за счёт runSuspend. Появлось несколько вопросов:
1. Почему это апи помечено internal?
2. Если этот алгоритм блокировки лучше, чем runBlocking, то почему для jvm реализация runBlocking не такая? А если не лучше, по почему не использовать сразу runBlocking?
там написано, что можно делать @Test suspend fun testXXX
но так же нельзя
источник

КР

Кирилл Романенко... in Programming Offtop
Oleg Yukhnevich
там написано, что можно делать @Test suspend fun testXXX
но так же нельзя
Меня даже не это больше всего удивляет. :) Я нихуя не понимаю, почему существует две реализации плюс-минус одной и той же идеи, и никто мне не отвечает
источник

OY

Oleg Yukhnevich in Programming Offtop
Кирилл Романенко
Меня даже не это больше всего удивляет. :) Я нихуя не понимаю, почему существует две реализации плюс-минус одной и той же идеи, и никто мне не отвечает
в котлинх есть скоупы, джобы и всё такое
в стлбид - нет
источник

КР

Кирилл Романенко... in Programming Offtop
Oleg Yukhnevich
в котлинх есть скоупы, джобы и всё такое
в стлбид - нет
Да, но при этом нет хуйни типо: вот вам runBlocking если вы хотите скоупы и проч, а вот вам runSuspend если не хотите, а вам просто надо запускать suspend функции в тестах.
источник

OY

Oleg Yukhnevich in Programming Offtop
Кирилл Романенко
Да, но при этом нет хуйни типо: вот вам runBlocking если вы хотите скоупы и проч, а вот вам runSuspend если не хотите, а вам просто надо запускать suspend функции в тестах.
А нафига?)
То есть, зачем именно runSuspend?
источник

КР

Кирилл Романенко... in Programming Offtop
Oleg Yukhnevich
А нафига?)
То есть, зачем именно runSuspend?
Судя по моим тестам, она чуть быстрее.
источник