Я работаю с базой данных через IRB, и я хотел бы периодически вносить изменения в базу данных (например, каждые 10 секунд), отображая журнал в STDOUT.
Кроме того, я хотел бы, чтобы ручное управление могло изменять базу данных и останавливать первый процесс.
Пока я подошел к следующему
def start
stop
@running = Thread.new do
loop do
fork do
puts 'change the database'
end
sleep 10
end
end
nil
end
def stop
@running.kill if @running
end
Однако, это не выполняется каждые 10 секунд, если я не введу что-либо в основной поток IRB.
Как заставить это работать?