Подтвердить что ты не робот

NHibernate SetTimeout на ICriteria

Может ли кто-нибудь сказать мне, что использует метод SetTimeout(int) в интерфейсе ICriteria?
Это миллисекунды, секунды, минуты или другое?

4b9b3361

Ответ 1

Немного о том, чтобы выкачать, предполагает, что это могут быть секунды:

Предполагая, что ICriteria совпадает с интерфейсом Criteria в ядре Hibernate, тогда JavaDoc для org.hibernate.Criteria дает подсказку: "см. также" ссылку на java.sql.Statement.setQueryTimeout(). Последний относится к его параметру тайм-аута в секундах.

Предполагая, что реализация NHibernate следует за подразумеваемым контрактом этого метода, тогда это должно быть хорошо. Однако, ради душевного спокойствия, я пошел и искал некоторые вещи NHibernate. Существуют различные ссылки на CommandTimeout; например, здесь, относящийся к NHibernate. Разумеется, в документации для CommandTimeout указано, что она секунд.

Я почти не писал выше, потому что я не знаю ответа прямо и не могу найти какую-либо конкретную документацию, но, поскольку в этом вопросе так мало, я полагал, что это не помешает представить эти выводы.

Ответ 2

Я думаю, что это секунды. API-интерфейс NHibernate тесно связан с Hibernate Core для Java, где метод Criteria.setTimeout(int) использует секунды в качестве единиц (см. Также Statement.setQueryTimeout(int)).

Кроме того, после просмотра некоторого источника NHibernate, он показывает, что он использует это значение для установки тайм-аута для базового запроса ADO.NET, который использует секунды.