24

有人能告诉我界面SetTimeout(int)中的方法使用什么单位吗? 是毫秒、秒、分钟还是其他?ICriteria

4

2 回答 2

28

一点点四处寻找表明它可能是几秒钟:

假设 ICriteria 与 Hibernate 核心中的 Criteria 接口相同,那么org.hibernate.Criteria的 JavaDoc 提供了一个提示 - java.sql.Statement.setQueryTimeout()的“另见”链接。后者将其超时参数称为秒。

假设 NHibernate 实现遵循该方法的隐含合同,那应该没问题。然而,为了安心,我去寻找一些 NHibernate 特定的东西。CommandTimeout 有多种参考;例如,here,与 NHibernate 相关。果然,CommandTimeout 的文档说它是几秒钟。

我几乎没有发布以上内容,因为我不完全知道答案,也找不到任何具体的文档 - 但由于这个问题很少,我认为展示这些发现不会有什么坏处。

于 2008-08-29T05:01:57.170 回答
8

我认为是几秒钟。NHibernate API 与 Hibernate Core for Java 非常相似,其中Criteria.setTimeout(int)方法使用秒作为单位(另请参见Statement.setQueryTimeout(int))。

此外,在查看了一些 NHibernate 源之后,它似乎正在使用该值来设置底层 ADO.NET 查询的超时,该查询使用秒数。

于 2008-08-29T04:54:01.603 回答