Size: a a a

Kotlin Community

2020 April 09

КР

Кирилл Романенко in Kotlin Community
Alex M
А если использовать conflate + delay?
Так он применяет ко всем, а мне надо только первые N секунд
источник

AM

Alex M in Kotlin Community
Как я понял из примера, он отбрасывает все элементы, которые коллектор не успевает обработать.
val time = measureTimeMillis {
   foo()
       .conflate() // conflate emissions, don't process each one
       .collect { value ->
           delay(300) // pretend we are processing it for 300 ms
           println(value)
       }
}  
println("Collected in $time ms")
источник

AM

Alex M in Kotlin Community
Кирилл Романенко
Так он применяет ко всем, а мне надо только первые N секунд
Кроме того можно добавить delay только для нужных N секунд, а для следующих элементов его не применять.
источник

КР

Кирилл Романенко in Kotlin Community
Alex M
Как я понял из примера, он отбрасывает все элементы, которые коллектор не успевает обработать.
val time = measureTimeMillis {
   foo()
       .conflate() // conflate emissions, don't process each one
       .collect { value ->
           delay(300) // pretend we are processing it for 300 ms
           println(value)
       }
}  
println("Collected in $time ms")
Нет, у меня не так работает.🤔
источник

AM

Alex M in Kotlin Community
Кирилл Романенко
Нет, у меня не так работает.🤔
Ну тогда я не понял задачу
источник

КР

Кирилл Романенко in Kotlin Community
Alex M
Ну тогда я не понял задачу
Я имел ввиду, твой пример не работает так, что он дропает все элементы, которые не успел обработать.
https://gist.github.com/indrih17/1dc916c9087ecf42311aa4ddb4ff8cf7
В консоль выводятся все 4 цифры
источник

AM

Alex M in Kotlin Community
Кирилл Романенко
Я имел ввиду, твой пример не работает так, что он дропает все элементы, которые не успел обработать.
https://gist.github.com/indrih17/1dc916c9087ecf42311aa4ddb4ff8cf7
В консоль выводятся все 4 цифры
сделай delay(300) в коллекторе
источник
2020 April 10

VS

Vladimir Sitnikov in Kotlin Community
Alexey Pushkarev
то есть у меня типо data class(val a: Int) {
     val b = Random(a)
}
data class Ab private constructor(val a: Int, private val b: Int) {
   constructor(a: Int): this(a, a*2)
}
источник

AP

Alexey Pushkarev in Kotlin Community
Vladimir Sitnikov
data class Ab private constructor(val a: Int, private val b: Int) {
   constructor(a: Int): this(a, a*2)
}
в итоге решил не делать дата классом и определить toString() так проще все таки))
источник

VP

Vladimir Petrakovich in Kotlin Community
Vladimir Sitnikov
data class Ab private constructor(val a: Int, private val b: Int) {
   constructor(a: Int): this(a, a*2)
}
Тут b можно изменить через copy()
источник

VS

Vladimir Sitnikov in Kotlin Community
Vladimir Petrakovich
Тут b можно изменить через copy()
источник

VS

Vladimir Sitnikov in Kotlin Community
хотя, да, меняется
источник

Л

Леша in Kotlin Community
Всем привет
Кто-то работал в Uber Developer Dashboard? Если да, буду очень признателен за помощь
источник

AE

Alexandr Emelyanov in Kotlin Community
источник

AE

Alexandr Emelyanov in Kotlin Community
источник

AE

Alexandr Emelyanov in Kotlin Community
А какая разница то будет с рекордами интегрировать? По идее в рантайме там просто геттеры и сеттеры
источник

OY

Oleg Yukhnevich in Kotlin Community
Alexandr Emelyanov
А какая разница то будет с рекордами интегрировать? По идее в рантайме там просто геттеры и сеттеры
разница в том, что там нет сеттеров и генерируются геттеры без префикса get
источник

AE

Alexandr Emelyanov in Kotlin Community
Oleg Yukhnevich
разница в том, что там нет сеттеров и генерируются геттеры без префикса get
Точно. Почему то думал что там с префиксом get
источник

РH

Руслан Голиков Home in Kotlin Community
а почему если я добавляю в arraylist array через переменную, то при изменении переменной после добавления изменяется и содержимое списка?
источник

VP

Vladimir Petrakovich in Kotlin Community
Руслан Голиков Home
а почему если я добавляю в arraylist array через переменную, то при изменении переменной после добавления изменяется и содержимое списка?
Потому что все объекты хранятся по ссылке, вам в @kotlin_start
источник