Method: Concurrent::Delay#reconfigure

Defined in:
lib/concurrent-ruby/concurrent/delay.rb

#reconfigure { ... } ⇒ true, false

Reconfigures the block returning the value if still ‘#incomplete?`

Yields:

  • the delayed operation to perform

Returns:

  • if success



146
147
148
149
150
151
152
153
154
155
156
# File 'lib/concurrent-ruby/concurrent/delay.rb', line 146

def reconfigure(&block)
  synchronize do
    raise ArgumentError.new('no block given') unless block_given?
    unless @evaluation_started
      @task = block
      true
    else
      false
    end
  end
end