olicitações HTTP paralelas em ruby

Tenho uma variedade de URLs e não quero abrir cada uma e buscar uma tag específic
Mas eu quero fazer isso em paralelo.

Aqui está o pseudocódigo do que eu quero fazer:

urls = [...]
tags = []
urls.each do |url|
  fetch_tag_asynchronously(url) do |tag|
    tags << tag
  end
end
wait_for_all_requests_to_finish()

Se isso puder ser feito de uma maneira agradável e segura, isso seria incríve
Eu poderia usar thread, mas não parece que as matrizes sejam seguras em rub

questionAnswers(3)

yourAnswerToTheQuestion