
Oleg
25.03.2017
20:33:45
Или кстати как вариант выход из скоупа

Nick
25.03.2017
20:34:44
Ну вот try with resources чем не пример выхода из скоупа
Удаление ссылки можно поимать тоже
Твои ресурс убьётся автоматически , когда не будет нужен

Google

Oleg
25.03.2017
20:35:44
переопределение finalize - худший подход для управления ресурсами, попробую нагуглить, почему это плохо

Nick
25.03.2017
20:36:09
Потому что финализация не сразу вызывается
И поток финализации может повиснуть

Oleg
25.03.2017
20:36:59
ну вот ты даже без гугла справился
я хотел авторитетными ссылками закидать

Nick
25.03.2017
20:37:25
Но есть фантом референс

Oleg
25.03.2017
20:37:41
второй вариант сам по себе не вариант, т.к. это очень ограничивает использование стримов
вот у тебя есть какое-то соединение с твоей асинхронной DB, ты реализовал поверх всего это стрим кейз-классов, и в каком-то своём http\websocket хэндлере отдаёшь элементы постранично

Nick
25.03.2017
20:39:00
Мы сейчас о каких стримах говорим

Oleg
25.03.2017
20:39:05
однажды, когда клиент хватит "довольно" тебе нужно будет закрыть стрим, чтобы это не значило с точки зрения ресурсов

Nick
25.03.2017
20:39:09
О структурах данных или о ио

Oleg
25.03.2017
20:39:29
ты даже не удосужился почитать, о каких стримах мы там говорили
После мерджа https://github.com/monix/monix/pull/280 мне кажется monix уделает всех, и будет решен вопрос с выбором Task

Google

Nick
25.03.2017
20:40:12
Конечно нет, я не могу весь чатик читать

Oleg
25.03.2017
20:40:45
но ты начал спорить, в ответ на комментарии к этому
зачем?

Nick
25.03.2017
20:41:19
Да я не начинал спорить
Я лишь спросил

Oleg
25.03.2017
20:42:15
это не вопрос
Дык сам стрим не должен об этом знать)

Nick
25.03.2017
20:42:51
Ну вот ты как пользователь стрема должен уметь его закрыть?
Мне кажется нет и это работа продюсера

Oleg
25.03.2017
20:43:11
да, вызвать метод stop

Nick
25.03.2017
20:43:20
Я это имел ввиду

Oleg
25.03.2017
20:43:32
точнее, использовать переход по эффекту stop
работа продюсера узнать, когда конзумеру больше не нужен стрим?

Nick
25.03.2017
20:44:17
Вот в rx вроде нету явного стопа

Oleg
25.03.2017
20:44:47

Nick
25.03.2017
20:45:08
Тех кто работает со стримом на другом конце
Как-то так

Oleg
25.03.2017
20:45:11
это
не
Observable
кликни на ссылку
это стримовый интерфейс a-la scalaz.StreamT с двумя дополнениями

Google

Oleg
25.03.2017
20:46:29
есть возможность использовать эффект "закрытия" стрима
и есть особый вид состояния, когда ты получаешь не один, а целую пачку элементов

Nick
25.03.2017
20:48:44
Я понял что ты имеешь ввиду
Посути дела это unsubscribe
И всеж это observable чистой воды)
Хотя не, он ж pull based

Oleg
25.03.2017
21:10:53
тогда ты никак не привяжешь сюда unsubscribe
или фримонадка какая
с командами open, read, close

Vladimir
27.03.2017
09:17:19
doobie help requested
WHERE product_id IN (${stringIds: stringIds.type})
Could not find or construct Param[shapeless.::[stringIds.type,shapeless.HNil]].
чего ему не хватает? stringIds - NonEmptyList[String]

Denis
27.03.2017
09:18:01
а зачем stringIds.type ?

Vladimir
27.03.2017
09:18:38
https://www.scala-exercises.org/doobie/parameterized_queries
> Dealing with IN Clauses

Nick
27.03.2017
09:19:49
скорее всего идея прибила какой-то из импортов и ты теперь огребаешь)

Denis
27.03.2017
09:20:34
попробуй написать implicitly[Param[stringIds.type :: HNil]] и в идее глянуть что и где он ищет

Vladimir
27.03.2017
09:22:10
компилить это в идее я сразу бросил)

Nick
27.03.2017
09:24:00
@leammas ты с котами или со скалаз?

Vladimir
27.03.2017
09:24:07
с котами

Юрий
27.03.2017
09:24:53
попробуй к обычному листу кастани

Google

Denis
27.03.2017
09:25:26
я думаю IN требует NEL

Nick
27.03.2017
09:27:00
у него итак NEL

Denis
27.03.2017
09:27:19

Nick
27.03.2017
09:27:37
@leammas
import doobie.imports._
import cats._, cats.data._, cats.implicits._
проверь импорты

Vladimir
27.03.2017
09:40:57
с листом сейм шит, импорты не нужны Unused import

Nick
27.03.2017
09:43:30
кто тебе такое сказал)

Admin
ERROR: S client not available

Nick
27.03.2017
09:43:33
лол
если идея говорит, что они не нужны, то это далеко не факт

Vladimir
27.03.2017
09:44:00
sbt)

Nick
27.03.2017
09:44:28
а как пимешь запрос покажи
через fragment?

Vladimir
27.03.2017
09:44:42
sql"""

Nick
27.03.2017
09:45:11
http://tpolecat.github.io/doobie-cats-0.4.0/05-Parameterized.html
присмотрись
и увидешь fr""""

Vladimir
27.03.2017
09:51:31
https://github.com/scala-exercises/exercises-doobie/blob/master/src/main/scala/doobie/ParameterizedQueriesSection.scala#L99
тут sql""" но я, кажется, увидел, что я пропустил)
implicit val stringsParam = Param.many(stringIds) т.ч. совет присмотреться был очень кстати

Sergey
27.03.2017
09:52:35
Param.many успешно выпилен уже и в 0.4.1 его нет

Vladimir
27.03.2017
09:53:44
? осталось его из доков выпилить и поправить их

Google

Sergey
27.03.2017
09:57:26

Евгений
27.03.2017
10:04:18
а насколько хорошо нужно знать джаву чтоб пойти скала джуном (без знания скалы)?
и возможно ли вообще такое

Vladimir
27.03.2017
10:04:45

Denis
27.03.2017
10:04:46
лучше даже не знать

Евгений
27.03.2017
10:05:27
ну не джаву как язык, а платформу
jmmы всякие

Ivan
27.03.2017
10:07:37
т.е. нужно иметь знания по Scala а не Java

Евгений
27.03.2017
10:08:13
окей

Aleksey
27.03.2017
10:41:12
вообще что бы идти куда либо без стажа надо уметь три вещи:
1) думать
2) говорить
3) программировать

Vasily
27.03.2017
10:41:35
1. Уметь проходить собеседования
2. Уметь проходить собеседования
3. Аналогично

Aleksey
27.03.2017
10:42:27
при чем под "говорить" я подразумеваю изложение мыслей как голосом, так и на бумаге.

Aleksei
27.03.2017
10:43:32
а если человек совсем прямо интроверт?

Aleksey
27.03.2017
10:44:53

Aleksei
27.03.2017
10:45:37
а вы все еще ищете, или вы перманентно в состоянии рыбалки?

Nikita
27.03.2017
10:46:36