Недавно я начал программировать в Ruby, и я рассматриваю обработку исключений.
Мне было интересно, был ли ensure
эквивалентом Ruby finally
в С#? Должен ли я:
file = File.open("myFile.txt", "w")
begin
file << "#{content} \n"
rescue
#handle the error here
ensure
file.close unless file.nil?
end
или я должен делать это?
#store the file
file = File.open("myFile.txt", "w")
begin
file << "#{content} \n"
file.close
rescue
#handle the error here
ensure
file.close unless file.nil?
end
Вызывается ли ensure
независимо от того, что, даже если исключение не возникает?