class AsyncWorker def initialize(&blk) @blk = Thread.new(&blk) end def call @blk.join @blk.value end end