首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ruby中处理SystemCallErrors的正确方法是什么?

在Ruby中处理SystemCallErrors的正确方法是什么?
EN

Stack Overflow用户
提问于 2012-08-16 01:17:50
回答 1查看 79关注 0票数 1

在Ruby语言中,我可以在path中将contents写到一个文件中,就像这样:

代码语言:javascript
复制
IO.write path, contents, :mode => 'w+'

但是,文档并未指定可能引发的异常类型。在C语言中,如果程序遇到EAGAINEINTR,它通常会再次尝试写入文件。我们是否应该在Ruby语言中做同样的事情(通过捕获Errno::EINTRErrno::EAGAIN)?我希望像Ruby这样的语言会有更高层次的抽象。这里使用的正确模式是什么?

(同样,我们还需要担心Ruby中的短计数吗?)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-16 03:24:45

经过进一步研究,我发现(不出所料) Ruby可以自动处理短计数和EAGAIN。适当的代码是in io.c

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11973945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档