@proRuby

Страница 1307 из 1594
Alexey
19.07.2018
13:50:57
Это окей, но если процесс сайдкика умрет?

Roman
19.07.2018
13:50:59
так сайдкик же итак умеет delay
блин да, что-то примерно такое и надо

Boris
19.07.2018
13:51:02
perform_at рекурсивный можно делать, но оно довольно шатко

Alexey
19.07.2018
13:51:30
Я бы собирал пул задач которые надо запустить и по расписанию гонял бы воркер который бы этот пул обрабатывал/чистил

Google
Alexey
19.07.2018
13:51:42
А туплю, там же конкретное время, сорян

Boris
19.07.2018
13:52:06
если будет падать, потом ретраится может нашедулить более 9000 джобов и попытаться исполнить все почти друг за другом

Alexey
19.07.2018
13:52:49
Можно и миллионы так на скедулить, если задачи медленные и процессов сайдкика > 1 :)

kolas
19.07.2018
13:54:07
сделай чтобы не падало и все ?

Alexey
19.07.2018
13:54:50
` resque StandardError false ` Добавь изюминку в жизнь команды :)

Roman
19.07.2018
13:55:27
а если кидать в редис что-то типа id: expiry_date, и затем поднимать воркер каждую минуту, который тащит все записи и смотрит на expiry_date

Boris
19.07.2018
13:55:42
сделай чтобы не падало и все ?
rescue Exception puts 'I am immortal, you idiot!'

Roman
19.07.2018
13:57:03
да, наверно что-то такое и сделаю, всем спасибо)

Dmitriy
19.07.2018
14:15:48
да задача по сути простая: запускаем таймер, он истекает, меняем поле в моделе
так это же отложенное выполнение. стандартная фича фоновых задач

Vadim
19.07.2018
14:16:36
Всем привет Ни кто не сталкивался с такой проблемой при установке ruby через rbenv + ruby-build ? Версия 2.4.2 ставится успешно, а 2.5.1 ни в какую.. rbenv install 2.4.2 Downloading ruby-2.4.2.tar.bz2... -> https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.2.tar.bz2 Installing ruby-2.4.2... Installed ruby-2.4.2 to /home/plan/.rbenv/versions/2.4.2 rbenv install 2.5.1 Downloading ruby-2.5.1.tar.bz2... -> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.1.tar.bz2 Installing ruby-2.5.1... BUILD FAILED (CentOS Linux 7 using ruby-build 20180618-7-gb6428c7) Inspect or clean up the working tree at /tmp/ruby-build.20180719161210.10495 Results logged to /tmp/ruby-build.20180719161210.10495.log Last 10 log lines: -Wsuggest-attribute=noreturn \ -Wsuggest-attribute=format * strip command: strip -S -x * install doc: yes * man page type: doc --- /bin/sh: -c: line 12: unexpected EOF while looking for matching `"' /bin/sh: -c: line 13: ошибка синтаксиса: неожиданный конец файла make: *** Нет правила для сборки цели `showflags', требуемой для `all'. Останов.

Google
Vadim
19.07.2018
14:19:29
с rvm проблем не было никогда, там все четко ) но попросили rbenv

rbenv-doctor говорит, что все ок Checking for `rbenv' in PATH: /home/plan/.rbenv/bin/rbenv Checking for rbenv shims in PATH: OK Checking `rbenv install' support: /home/plan/.rbenv/plugins/ruby-build/bin/rbenv-install (ruby-build 20180618-7-gb6428c7) Counting installed Ruby versions: 1 versions Checking RubyGems settings: OK Auditing installed plugins: OK

Dmitriy
19.07.2018
14:22:35
Как в concern использовать константы модели, в которую инклудится этот концерн? Для методов классов просто через self. А в для инстанс методов константы модели не видятся. Уже много времени потратил на эту ерунду, бросать уже не хочется

Alexey
19.07.2018
14:23:47
self.class::CONSTANT_NAME ?

Dmitriy
19.07.2018
14:24:06
нет, так тоже не видит

Alexey
19.07.2018
14:30:17
Мне кажется это проблема ruby-build

Roman
19.07.2018
14:31:07
не исключено

Alexey
19.07.2018
14:38:57
@vadimstroganov в любом случае, стоит запустить с --verbose будет яснее

Vadim
19.07.2018
14:40:06
на убунте тоже проблем не было

c --verbose не особо понятнее стало)

Alexey
19.07.2018
14:45:04
RUBY_CONFIGURE_OPTS="--disable-dtrace" rbenv install 2.5.1 @vadimstroganov

Vadim
19.07.2018
14:45:54
таже самая ошибка

начиная с версии 2.5.0 если ставить версию ниже - все работает

не понимаю

rabbitkate
19.07.2018
14:52:30
всем привет. подскажите пожалуйста, как можно создать хеш с четными ключами от 0 до 20? через циклы и запись через массив пробовала, но ошибаюсь либо в синтаксисе, либо в алгоритме, фигня выходит

Boris
19.07.2018
14:53:10
а значения?

rabbitkate
19.07.2018
14:53:38
не суть важно

получилось, если выписать весь массив, типа [0,2,4,6,..], но нужно вида (0..20)

Google
Boris
19.07.2018
14:55:30
ну например (0..20).to_a.zip(Array.new(20)).to_h

а сорян, забыл про четность)

(0..20).to_a.select(&:even?).zip(Array.new(20)).to_h

и Array.new(10), но это уже про значения:)

?
19.07.2018
14:57:55
21.times {|v| v.even? ? v.to_h : next} Не уверен. Но должно сработать. Или поправьте меня ;)

rabbitkate
19.07.2018
14:58:16
?
19.07.2018
14:59:32
(0..20).to_a.select(&:even?).zip(Array.new(20)).to_h
Но это сильно наворочено и круто :)

Boris
19.07.2018
15:00:25
Но это сильно наворочено и круто :)
по моему нет, учитывая условие задачи. Только стандартнейшие фичи `ruby`=)

Alexey
19.07.2018
15:00:47
Hash[*(0...20)] => {0=>1, 2=>3, 4=>5, 6=>7, 8=>9, 10=>11, 12=>13, 14=>15, 16=>17, 18=>19}

?
19.07.2018
15:01:06
Не. Я не говорю что сложно. Тип элегантно. И красиво.

Boris
19.07.2018
15:01:23
Alexander
19.07.2018
15:01:30
это лучшее

?
19.07.2018
15:02:26
Лол. А как это работает ?)

Alexey
19.07.2018
15:02:41
нечетный элемент массива - ключ, четный - значение

но ломается изи, если элементов нечетное количество :D

Boris
19.07.2018
15:03:11
хитрость в методе [] класса Hash, а * расчленяет массив на ряд параметров

?
19.07.2018
15:04:05
Что то вроде сплита для диапазона-массива ?

Alexander
19.07.2018
15:05:56
?
19.07.2018
15:06:11
ты про оператор * ?
Угу. Первый раз такое вижу

rabbitkate
19.07.2018
15:06:31
а помогите пожалуйста еще с одной задачкой, слишком давно уже висит в "когда-нибудь додумаюсь/догуглюсь как сделать". Условие: раз в секунду прибавлять 2 к предыдущему значению начиная с 0, пока не будет > 10 секунд, затем проверить, что полученное число находится в диапазоне 20+-2

Google
Alexander
19.07.2018
15:07:53
Угу. Первый раз такое вижу
ruby splat operator - вот так погугли

Admin
ERROR: S client not available

?
19.07.2018
15:10:37
Ну я бы в цикл обернул. И брал по модулю 10 переменную в дополнительную. и инкрементил основную на дополнительную.

Alexey
19.07.2018
15:11:56
А если честно @qarabbit, мое решение - худшее что ты можешь использовать. Твоя задача про изучение работы циклов у enumerable объектов, а не про нюансы языка. имей ввиду:)

rabbitkate
19.07.2018
15:15:46
?
19.07.2018
15:16:41
a=0 while true b=a%10 b==0 ? a+=1 : a+=b puts a sleep 1 end Вроде так. С телефона не очень удобно ?

Boris
19.07.2018
15:17:12
как-то очкую я в руби с таймерами работать через `sleep`=)

и loop do

?
19.07.2018
15:17:47
Блокирует процесс. Но тут дедлок не схватишь. Поэтому ок:)

rabbitkate
19.07.2018
15:18:30
a=0 while true b=a%10 b==0 ? a+=1 : a+=b puts a sleep 1 end Вроде так. С телефона не очень удобно ?
чет он явно не собирается на 10 секундах останавливаться)

Alexey
19.07.2018
15:18:50
def foo(sum = 0, tick = 10) return (18...22).member?(sum) if tick.zero? sum += 2 sleep(1) foo(sum, tick-1) end

?
19.07.2018
15:18:51
У тебя потом складывается же

Alexey
19.07.2018
15:19:55
def foo(sum = 0, tick = 10) return (18...22).member?(sum) if tick.zero? sleep(1) foo(sum+2, tick-1) end даже так

Google
?
19.07.2018
15:19:55
Фу ты. Не так прочитал условие.

Весь день клинит с этой жары ?

Boris
19.07.2018
15:21:05
Фу ты. Не так прочитал условие.
ты в каком городе/стране?)

в Москве вот адский ливень)

?
19.07.2018
15:21:24
В питере ??‍♀️

Boris
19.07.2018
15:21:52
В питере ??‍♀️
погода походу нас перепутала)))

?
19.07.2018
15:22:13
21° вроде показывает. Но душно очень. В 12 ночи хорошая температура и тёплый ветерок дует :)

?
19.07.2018
15:22:40
Сейчас с ноута зайду. И попробую ещё раз написать

t = 0 var = 0 until t > 10 var += 2 puts var break if (18..22).include?(var) t+=1 sleep 1 end Все нормально. пропустил точку?

Alexey
19.07.2018
15:55:44
include? вроде как преобразует range в массив

попробуй member?

Василий
19.07.2018
16:00:49
попробуй member?
include? и member? - алиасы у Range https://github.com/ruby/ruby/blob/trunk/range.c#L1503

Alexey
19.07.2018
16:02:52
Не знал, спасибо

Иван
19.07.2018
16:21:20
тут скорее можно какой нибудт .between? или .cover?

Страница 1307 из 1594