Sha256: 2a70ebcae393500b17782db59f216bcbe5dd64813950ec7b8763d49b17cbccac

Contents?: true

Size: 686 Bytes

Versions: 26

Compression:

Stored size: 686 Bytes

Contents

# -*- coding: utf-8 -*-
#
# Copyright 2013 whiteleaf. All rights reserved.
#

module Command
  class Update < CommandBase
    class Interval
      MIN = 2.5               # 作品間ウェイトの最低秒数(処理時間含む)
      FORCE_WAIT_TIME = 2.0   # 強制待機時間

      def initialize(interval)
        @time = Time.now - MIN
        interval = interval.to_f
        @interval_time = interval >= MIN ? interval : MIN
      end

      def wait
        wait_time = Time.now - @time
        sleep(@interval_time - wait_time) if wait_time < @interval_time
        @time = Time.now
      end

      def force_wait
        sleep(FORCE_WAIT_TIME)
      end
    end
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
narou-3.2.5.1 lib/command/update/interval.rb
narou-3.2.5 lib/command/update/interval.rb
narou-3.2.4 lib/command/update/interval.rb
narou-3.2.3 lib/command/update/interval.rb
narou-3.2.2 lib/command/update/interval.rb
narou-3.2.1 lib/command/update/interval.rb
narou-3.2.0.1 lib/command/update/interval.rb
narou-3.2.0 lib/command/update/interval.rb
narou-3.1.11 lib/command/update/interval.rb
narou-3.1.10 lib/command/update/interval.rb
narou-3.1.9 lib/command/update/interval.rb
narou-3.1.8 lib/command/update/interval.rb
narou-3.1.7 lib/command/update/interval.rb
narou-3.1.6 lib/command/update/interval.rb
narou-3.1.5 lib/command/update/interval.rb
narou-3.1.4 lib/command/update/interval.rb
narou-3.1.3 lib/command/update/interval.rb
narou-3.1.2 lib/command/update/interval.rb
narou-3.1.1 lib/command/update/interval.rb
narou-3.0.5.1 lib/command/update/interval.rb