# File lib/ruote/worker.rb, line 69
    def initialize(name, storage=nil)

      if storage.nil?
        storage = name
        name = nil
      end

      @name = name || 'worker'

      if storage.respond_to?(:storage)
        @storage = storage.storage
        @context = storage.context
      else
        @storage = storage
        @context = Ruote::Context.new(storage)
      end

      service_name = @name
      service_name << '_worker' unless service_name.match(/worker$/)

      @context.add_service(service_name, self)

      @last_time = Time.at(0.0).utc # 1970...

      @state = 'running'
      @run_thread = nil
      @state_mutex = Mutex.new

      @msgs = []

      @sleep_time = @context['restless_worker'] ? nil : 0.000

      @info = @context['worker_info_enabled'] == false ? nil : Info.new(self)
    end