【[C#] 实现可设置超时的 Task】教程文章相关的互联网学习教程文章

c# – 如何更改查询的超时【代码】

对于具有许多记录的查询,我有超时问题.如何更改查询超时? 我尝试以这种方式更改超时连接,但它不起作用: connection.ConnectionTimeout = 60; //不工作(准备好了) 类:public abstract class RepositoryBase<TEntity> : IRepositoryBase<TEntity>, IDisposable where TEntity : class {protected SqlConnection _connection;protected string _connectionString;public RepositoryBase(string connectionString){_connectionStrin...

c# – 增加asp.net应用程序的应用程序超时【代码】

在我的应用程序中,我进行了一次服务调用,最多可能需要2分钟才能返回值. (跨多个数据库进行处理). 在调用此方法时,应用程序超时. 我在web配置中设置了以下内容.我仍然在IIS中托管时收到错误<system.web><compilation debug="true" targetFramework="4.0" /><sessionState timeout="40"></sessionState><httpRuntime maxRequestLength="2147483647" executionTimeout="3600"/></system.web>我也在服务web.config中设置了相同的执行超...

c# – 如何创建一个可在超时后重新发送HTTP请求的Observable序列?【代码】

我是Rx的新手,我正在尝试创建一个Observable序列,它允许我执行以下操作: >使用发送HTTP POST请求到URISystem.Net.Http.HttpClient.SendAsync(request,cancelToken)>等待可配置的时间段以返回响应或请求超时.>如果请求超时,则重复请求.>继续重复请求,直到收到响应(不一定是200 OK)或最大值.达到了重试次数.>如果最大达到重试次数然后我必须知道它,所以我可以记录错误. 我一直在玩:HttpRequestMessage request = new HttpRequestMe...

c# – WebClient默认超时?【代码】

我看到https://stackoverflow.com/questions/6262547/webclient-timeout-error 的帖子,它说默认超时是100秒.但我看到How to change the timeout on a .NET WebClient object的评论说The default timeout is 100 seconds. Although it seems to run for 30 seconds. – Carter Dec 13 ’12 at 16:39在我的程序中,超时总是大约20秒,是否有人知道原因?解决方法:我整理了一个最小的案例来测试WebClient类的默认超时. 我向我的本地PC发...

c# – ASP HttpClient GetAsync没有响应,也没有超时【代码】

我正在使用HttpClient在ASP MVC上创建一个Instagram API客户端,我正在尝试发出一个get请求,但它失败而没有抛出异常或响应,并且没有响应我的超时.这是我的代码:public class InstagramService{private HttpClient Client = new HttpClient {BaseAddress = new Uri("https://api.instagram.com/v1/"),Timeout = TimeSpan.FromMilliseconds(500)};public async Task<InstagramUser> GetInstagramUser(long? userId = null){Instagram...

c# – 使用XmlReader.Create(uri)防止或处理超时【代码】

有时我通过URL读取XML时会遇到超时异常.有什么我可以做的,以防止这种情况,或者这是远程服务器的问题?下面是我的简单代码:XmlDocument doc = new XmlDocument(); doc.Load(XmlReader.Create(this.RssUrl));我看过KeepAlive可能有帮助的帖子,但我不知道如何将该设置传递到上面的代码中(或者如果这是正确的解决方案):http://www.velocityreviews.com/forums/t95843-system-webexception-the-operation-has-timed-out.html 这是例外...

[C#] 实现可设置超时的 Task

前言 如何实现支持超时的 Task ? 关键点: Task.WhenAny 实现 一个扩展方法就可以搞定。 // 有返回值 public static async Task<TResult> TimeoutAfter<TResult>(this Task<TResult> task, TimeSpan timeout) {using (var timeoutCancellationTokenSource = new CancellationTokenSource()){var completedTask = await Task.WhenAny(task, Task.Delay(timeout, timeoutCancellationTokenSource.Token));if (completedTask == task...

C# Task超时规则【代码】

正规的骚操作:https://stackoverflow.com/questions/4238345/asynchronously-wait-for-taskt-to-complete-with-timeout 假如我们需要这样的游戏规则,在规定的时间内没有完成有关功能,就自动提示超时。 为了保证这个功能足够简单又能够说明清楚,我们加入朴素的素数判定private static bool IsPrime(long num) {bool isPrime = false;if (num == 1){return true;}for (var i = 2; i < num; i++){if (num % i != 0) continue;isPr...

c#-将SQL DB部署到Azure超时启用索引【代码】

大家好,感谢您对此的关注.因此,我们有一个要在Azure中托管的项目,我们的SQL Server存储在一个弹性池中.我们拥有的数据库是从.NET框架的Code First迁移生成的;然后我们使用一些SQL导入脚本将数据加载到数据库中. 问题在于将数据库部署到Azure.我们已经尝试在开发机和sql服务器上使用SQL Server Management Studio.我们尝试使用将数据库部署到Microsoft SQL Azure将数据库推送到Azure,并尝试使用BACPAC直接连接到Azure和导入数据层应...

c#-超时在数据库中插入1,000,000行(有时)【代码】

我正在使用.NET Framework 4.0,Entity Framework 6.1.3和SQL Server 2012开发C#库. 我有一个用Ado.net调用的存储过程:CREATE PROCEDURE [dbo].[InsertCodes]@codes as dbo.SerialAndValueList READONLY -- Codes, @username nvarchar(50) , @source nvarchar(50) , @column2 tinyint ASDeclare @codesCount int;set nocount on;-- =========== CODE ============= INSERT INTO Code ...

c#-Redis超时优化.需要建议【代码】

我收到此异常-Redis超时已过期.从池中获取连接之前已经过超时时间.这可能是因为所有池连接都在使用中.我已经将ServiceStack.Redis.PoolSizeMultiplier设置为100,并将ServiceStack.Redis.PoolTimeOutSeconds设置为50.但是我仍然遇到错误.你有什么建议.要增加还是减少此超时值?我需要有关此Redis.TimeOutValue的一些解释.增加这些值的优点是什么?解决方法:此错误消息表示当前所有Redis连接都在使用中,并且客户端超时,等待来自池的空...

C#-合理的SQL超时

当您对数据库执行查询时,什么是明智的超时策略.通常,我只是保留默认值,但想知道是否有合理的经验法则? DBA通常希望看到什么?解决方法:这是那些“取决于”答案之一.对于默认设置超时的数百万行数据,存在许多昂贵的查询. 我使用的策略是将其设置为0(换句话说,没有超时),然后使用SQL Profiler(运行跟踪)来获取持续时间.我将这个倍数乘以1.15可以给自己一个15%的缓冲区,这样我就不会因系统延迟或执行“缓慢”而超时.但是我认为,如果...

c#-将sql查询命令超时设置为max的负面影响【代码】

我在执行SQL查询期间遇到超时异常.所以我增加了C#代码的超时时间,现在可以正常工作了.DbCommand.CommandTimeout = 3600;这一定是由于数据库中数据的增加而发生的.我不希望将来在任何其他情况下发生此异常. >那么在所有方法中添加命令超时行是一种好习惯吗?>非常高兴知道此操作的积极和消极方面.解决方法:>对您期望某项运行的速度有一个合理的期望始终是一个好主意,但是坦率地说,很少需要指定一个明确的超时时间-通常只有在您知道某...

如何在执行C#Azure函数期间避免SqlClient超时错误?

我已经使用C#创建了一个功能应用程序时间触发器.在逻辑内部,我调用并执行在SQL Server中创建的存储过程. 存储的proc的执行耗时超过8分钟,并且在Azure函数应用日志中出现以下错误:2018-04-02T11:03:46.409 [Error] Exception while executing function:Functions.AbarIomWeeklyUsage. mscorlib: Exception has been thrown bythe target of an invocation. .Net SqlClient Data Provider: ExecutionTimeout Expired. The timeout ...

c# – 错误:使用Redis执行GET超时【代码】

我在Redis缓存中有200,000个用户的列表. 当我尝试使用StackExchange.Redis StringGet从Redis缓存中获取该列表时,我收到TimeOut错误:“Timeout performing GET , inst: 1, mgr: ExecuteSelect, err: never, queue: 2, qu: 0, qs: 2, qc: 0, wr: 0, wq: 0, in: 8596, ar: 0, IOCP: (Busy=0,Free=1000,Min=2,Max=1000), WORKER: (Busy=0,Free=4095,Min=2,Max=4095), clientName: WIN-XYZ”有人可以解释这些值表示什么:忙,免费,最小和...