Npgsql命令超时值;是0不确定
本文关键字:不确定 命令 超时 Npgsql | 更新日期: 2023-09-27 18:06:02
我还没有发现任何明确说明这一点的东西。如果我在npgsql中设置了连接对象的Commandtimeout值,这会让它无限期等待吗?
是的,0是无限的。
Npgqlstate.cs包含以下代码作为context.Mediator.CommandTimeout > 0
因此,如果CommandTimeout为0,Npgsql将永远等待。
internal IEnumerable<IServerResponseObject> ProcessBackendResponsesEnum(NpgsqlConnector context,
bool cancelRequestCalled)
{
try
{
// Process commandTimeout behavior.
if ((context.Mediator.CommandTimeout > 0) &&
(!CheckForContextSocketAvailability(context, SelectMode.SelectRead)))
请参阅postgreSQL文档:
PGCONNECT_TIMEOUT设置libpq在尝试连接到PostgreSQL服务器时等待的最大秒数。如果未设置或设置为零,libpq将无限期等待。不建议将超时设置为小于2秒。