本文整理汇总了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();
}