本文整理匯總了C#中Npgsql.NpgsqlConnector.ProcessAndDiscardBackendResponses方法的典型用法代碼示例。如果您正苦於以下問題:C# NpgsqlConnector.ProcessAndDiscardBackendResponses方法的具體用法?C# NpgsqlConnector.ProcessAndDiscardBackendResponses怎麽用?C# NpgsqlConnector.ProcessAndDiscardBackendResponses使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Npgsql.NpgsqlConnector
的用法示例。
在下文中一共展示了NpgsqlConnector.ProcessAndDiscardBackendResponses方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: ExecuteBlindSuppressTimeout
internal static void ExecuteBlindSuppressTimeout(NpgsqlConnector connector, NpgsqlQuery query)
{
// Block the notification thread before writing anything to the wire.
using (var blocker = connector.BlockNotificationThread())
{
// Write the Query message to the wire.
connector.Query(query);
// Flush, and wait for and discard all responses.
connector.ProcessAndDiscardBackendResponses();
}
}
示例2: ExecuteBlind
private static void ExecuteBlind(NpgsqlConnector connector, NpgsqlQuery query, int timeout)
{
// Block the notification thread before writing anything to the wire.
using (var blocker = connector.BlockNotificationThread())
{
// Set statement timeout as needed.
connector.SetBackendCommandTimeout(timeout);
// Write the Query message to the wire.
connector.Query(query);
// Flush, and wait for and discard all responses.
connector.ProcessAndDiscardBackendResponses();
}
}
示例3: ExecuteSetStatementTimeoutBlind
/// <summary>
/// Special adaptation of ExecuteBlind() that sets statement_timeout.
/// This exists to prevent Connector.SetBackendCommandTimeout() from calling Command.ExecuteBlind(),
/// which will cause an endless recursive loop.
/// </summary>
/// <param name="connector"></param>
/// <param name="timeout">Timeout in seconds.</param>
internal static void ExecuteSetStatementTimeoutBlind(NpgsqlConnector connector, int timeout)
{
NpgsqlQuery query;
// Optimize for a few common timeout values.
switch (timeout)
{
case 10 :
query = NpgsqlQuery.SetStmtTimeout10Sec;
break;
case 20 :
query = NpgsqlQuery.SetStmtTimeout20Sec;
break;
case 30 :
query = NpgsqlQuery.SetStmtTimeout30Sec;
break;
case 60 :
query = NpgsqlQuery.SetStmtTimeout60Sec;
break;
case 90 :
query = NpgsqlQuery.SetStmtTimeout90Sec;
break;
case 120 :
query = NpgsqlQuery.SetStmtTimeout120Sec;
break;
default :
query = new NpgsqlQuery(string.Format("SET statement_timeout = {0}", timeout * 1000));
break;
}
// Write the Query message to the wire.
connector.Query(query);
// Flush, and wait for and discard all responses.
connector.ProcessAndDiscardBackendResponses();
}
示例4: ExecuteSetStatementTimeoutBlind
/// <summary>
/// Special adaptation of ExecuteBlind() that sets statement_timeout.
/// This exists to prevent Connector.SetBackendCommandTimeout() from calling Command.ExecuteBlind(),
/// which will cause an endless recursive loop.
/// </summary>
/// <param name="connector"></param>
/// <param name="timeout">Timeout in seconds.</param>
internal static void ExecuteSetStatementTimeoutBlind(NpgsqlConnector connector, int timeout)
{
NpgsqlQuery query;
// Bypass cpmmand parsing overhead and send command verbatim.
query = NpgsqlQuery.Create(connector.BackendProtocolVersion, string.Format("SET statement_timeout = {0}", timeout * 1000));
// Write the Query message to the wire.
connector.Query(query);
// Flush, and wait for and discard all responses.
connector.ProcessAndDiscardBackendResponses();
}