2012-08-15 77 views
1

在Ruby中,我可以在pathcontents文件,作爲簡單的:在Ruby IO中處理SystemCallErrors的正確方法是什麼?

IO.write path, contents, :mode => 'w+' 

但是,文件沒有規定可提出什麼樣的異常。在C中,如果程序遇到EAGAINEINTR,它通常會嘗試再次寫入文件。我們是否應該在Ruby中做同樣的事情(通過捕獲Errno::EINTRErrno::EAGAIN)?我會期待在Ruby這樣的語言中有更高層次的抽象。這裏使用的正確模式是什麼?

(在相同的音符,我們要不要擔心在Ruby中?約短計數)

回答

2

一些更多的挖掘後,我發現(如預期)是Ruby的自動處理短計數和EAGAIN。適當的代碼是in io.c

相關問題