Size: a a a

Kotlin Community

2020 June 11

BP

Bogdan Panchenko in Kotlin Community
Lev Shagalov
Я думал единственное отличие в том, что async может вернуть результат. А остальное одинаково.
Ну да, и когда вы видите launch вы знаете что результат вам не нужен. А когда async то значить результат используется. Идея также ворнинг кидает когда не используешь Deferred
источник

LS

Lev Shagalov in Kotlin Community
Bogdan Panchenko
Ну да, и когда вы видите launch вы знаете что результат вам не нужен. А когда async то значить результат используется. Идея также ворнинг кидает когда не используешь Deferred
Спасибо
источник

LS

Lev Shagalov in Kotlin Community
Положим, у меня есть актор, задача которого получать события, реагировать изменять внутреннее состояние а так же отдавать его (снапшот) под требованию. Как это отдавать безопасно?
источник

LS

Lev Shagalov in Kotlin Community
Положим состояние фактически не мутабельно, хоть и с ссылками
источник

LS

Lev Shagalov in Kotlin Community
Просто менять объект переприсвоив его во внешний по отношению к актору var?
источник

RE

Roman Elizarov in Kotlin Community
Нет. Отдайте актору CompletableDefererred, который тот заполнит. Но вообще, системы с акторами лучше так не писать.
источник

RE

Roman Elizarov in Kotlin Community
А вообще разные техники описаны здесь, в т.ч. показано почему не надо просто var менять: https://kotlinlang.org/docs/reference/coroutines/shared-mutable-state-and-concurrency.html
источник

D

Denys in Kotlin Community
источник

AN

Alexander Nozik in Kotlin Community
Lev Shagalov
Я думал единственное отличие в том, что async может вернуть результат. А остальное одинаково.
Правильно думал.
источник

AN

Alexander Nozik in Kotlin Community
А в чем пробелма самим написать?  В kmath для матриц есть билдеры
источник

AN

Alexander Nozik in Kotlin Community
Я аргументированно высказался против
источник

QH

Quantum Harmonizer in Kotlin Community
mv стдлиб свалка
источник

AL

Anton Lakotka in Kotlin Community
Тоже не вижу смысла в поддержке таких масивов на уровне языка.
источник

AN

Alexander Nozik in Kotlin Community
Anton Lakotka
Тоже не вижу смысла в поддержке таких масивов на уровне языка.
Смысл поддержки есть, но там не получится сделать one size to fit all, собственно многомерные массивы из Java это отлично показывают
источник

AN

Alexander Nozik in Kotlin Community
И кстати если брать что-то за default, я бы взял вариант из Java.
источник

PS

Paul S in Kotlin Community
list.sortedWith(
       compareBy(
           { it.a },
           { it.b }
       )
   )
как сделать чтобы первая сортировка была по  убыванию, а вторая по возрастанию?
источник

IE

Ivan Erofeev in Kotlin Community
Paul S
list.sortedWith(
       compareBy(
           { it.a },
           { it.b }
       )
   )
как сделать чтобы первая сортировка была по  убыванию, а вторая по возрастанию?
compareByDescending { it.a }.thenBy { it.b }
источник

MT

Mikhail T in Kotlin Community
Добрый день

не могу понять поведение, помогите пожалуйста разобраться:

data class RepoUserSignUpDto(

       @JsonProperty("oguid")
       val oGuid: UUID?,
       val surname: String,
       val name: String,
       val patronymic: String?,
       val email: String,
       val login: String,
       val contacts: String,
       val app: String,
       @JsonProperty(value = "org_name")
       val orgName: String,
       @JsonProperty(value = "org_oguid")
       val orgOguid: UUID?,
       val code: String,
       @JsonProperty(value = "agree")
       val agree: Boolean
)

POST http://localhost:8088/v1/repo/users/signup/
Content-Type: application/json
Accept-Language: ru-RU

{
 "surname": "йуйуй",
 "name": "йуцйу",
 "email": "asasas@gmail.com",
 "contacts": "+7 (111) 111-11-11",
 "login": "asasasas2",
 "app": "APP1",
 "code": "ASDF",
 "org_name": "qwqweqeqe"
}


На это приходит такой жсон:

{
 "oguid": null,
 "surname": "йуйуй",
 "name": "йуцйу",
 "patronymic": null,
 "email": "asasas@gmail.com",
 "login": "asasasas2",
 "contacts": "+7 (111) 111-11-11",
 "app": "APP1",
 "org_name": "qwqweqeqe",
 "org_oguid": null,
 "code": "ASDF",
 "agree": false
}



почему agree автоматом в фальш становится, а не падеает с ошибкой?
Ведь в ДТО у меня поле agree не может быть налл?
источник

VK

Vladyslav Kopaniev in Kotlin Community
Mikhail T
Добрый день

не могу понять поведение, помогите пожалуйста разобраться:

data class RepoUserSignUpDto(

       @JsonProperty("oguid")
       val oGuid: UUID?,
       val surname: String,
       val name: String,
       val patronymic: String?,
       val email: String,
       val login: String,
       val contacts: String,
       val app: String,
       @JsonProperty(value = "org_name")
       val orgName: String,
       @JsonProperty(value = "org_oguid")
       val orgOguid: UUID?,
       val code: String,
       @JsonProperty(value = "agree")
       val agree: Boolean
)

POST http://localhost:8088/v1/repo/users/signup/
Content-Type: application/json
Accept-Language: ru-RU

{
 "surname": "йуйуй",
 "name": "йуцйу",
 "email": "asasas@gmail.com",
 "contacts": "+7 (111) 111-11-11",
 "login": "asasasas2",
 "app": "APP1",
 "code": "ASDF",
 "org_name": "qwqweqeqe"
}


На это приходит такой жсон:

{
 "oguid": null,
 "surname": "йуйуй",
 "name": "йуцйу",
 "patronymic": null,
 "email": "asasas@gmail.com",
 "login": "asasasas2",
 "contacts": "+7 (111) 111-11-11",
 "app": "APP1",
 "org_name": "qwqweqeqe",
 "org_oguid": null,
 "code": "ASDF",
 "agree": false
}



почему agree автоматом в фальш становится, а не падеает с ошибкой?
Ведь в ДТО у меня поле agree не может быть налл?
```jackson:
   deserialization:
     FAIL_ON_NULL_FOR_PRIMITIVES: true```
источник

MT

Mikhail T in Kotlin Community
о как, спасибо
источник