草庐IT

azure-pipelines-build-task

全部标签

c# - await 和 async 与 Task 并行库的区别

任务并行库和await、async有什么区别。引入await和async的必要性是什么?我看到TPL是C#4.0的一部分,await/async是C#5.0的一部分,但除此之外,基本区别是什么。引入这个新关键字的必要性是什么? 最佳答案 任务并行库是为parallelprogramming设计的-当您有很多工作要做并且想在多个线程之间拆分这些工作以便您可以使用所有CPU内核时。TPL最适合CPU密集型工作。Async和await适用于asynchronousprogramming-当你有一个操作(或多个操作)将在未来完成,而你想同时

c# - Task.Delay 永远不会完成

以下代码将永远卡住。publicasyncTaskDoSomethingAsync(){awaitTask.Delay(2000);}privatevoidButton_Click(objectsender,RoutedEventArgse){DoSomethingAsync().Wait();//Task.Delay(2000).Wait();}如果我将调用切换到带有注释掉的代码的DoSomethingAsync,它会按预期运行。我怀疑嵌套等待以某种方式导致了死锁,但我不确定原因或如何修复它。 最佳答案 假设Button_Clic

c# - Azure TableStorage 中的 TableQuery<T> 对 PartitionKey 进行筛选

我正在尝试抽象化通过partitionKey从表中获取所有实体,如下所示:publicListGetEntities(stringpartitionKey,Tentity)whereT:TableEntity{try{vartableClient=_account.CreateCloudTableClient();vartable=tableClient.GetTableReference(entity.GetType().Name.ToLower());varexQuery=newTableQuery().Where(TableQuery.GenerateFilterConditio

c# - 如何并行启动 List<Task>?

我有一个返回System.Threading.Tasks.Task的对象:publicclassMyClass{publicTaskGetTask(objectstate,CancellationTokencancellationToken){returnnewTask(Execute,state,cancellationToken);}publicvoidExecute(objectcontext){//dostuff}}在其他地方我有一个List,所以我执行以下操作以获得List:varmyTaskList=myClassList.Select(p=>p.GetTask(null,

c# - TaskCompletionSource 抛出 "An attempt was made to transition a task to a final state when it had already completed"

我想使用TaskCompletionSource来包装MyService这是一个简单的服务:publicstaticTaskProcessAsync(MyServiceservice,intparameter){vartcs=newTaskCompletionSource();//EverytimeProccessAsynciscalledthisassignstoCompleted!service.Completed+=(sender,e)=>{tcs.SetResult(e.Result);};service.RunAsync(parameter);returntcs.Task;}

c# - Azure 函数和缓存

我们计划开发一个Azure函数,其输入触发器是一条服务总线消息,输出将是blob存储。服务总线消息将包含一个图像url,该函数会将图像调整为预定义的分辨率,并将上传到azureblob存储。图像大小应调整到的分辨率存储在数据库中,Azure函数需要调用数据库以了解输入消息中图像应该使用的分辨率。分辨率实际上是根据输入消息的来源配置的主数据。进行数据库调用将是一次昂贵的调用,因为每次调用都必须转到数据库。有什么方法可以缓存数据并在不调用数据库的情况下使用它。比如内存缓存? 最佳答案 您可以自由使用您将在其他.NET应用程序中使用的常用

c# - Task.Yield() 与 Task.Delay(0)

Delay(0)是否总是内联?根据我的经验,它确实:usingSystem;usingSystem.Threading;usingSystem.Threading.Tasks;namespaceConsoleApplication{classProgram{staticasyncTaskTest(){awaitTask.Yield();Console.WriteLine("afterYield(),thread:{0}",Thread.CurrentThread.ManagedThreadId);awaitTask.Delay(0);Console.WriteLine("afterDe

c# - Azure 共享访问签名 - 签名不匹配

我收到这个错误:AuthenticationFailedServerfailedtoauthenticatetherequest.MakesurethevalueofAuthorizationheaderisformedcorrectlyincludingthesignature.RequestId:6c3fc9a8-cdf6-4874-a141-10282b709022Time:2014-07-30T10:48:43.8634735ZSignaturedidnotmatch.Stringtosignusedwasrwl2014-07-31T04:48:20Z/acoustie/$ro

c# - Task.WaitAll 不等待任务完成

在尝试弄清楚C#中的新(现在可能不是那么新,但对我来说还是新的)Task异步编程时,我遇到了一个问题,我花了一些时间才弄明白,我不确定为什么。我已经解决了这个问题,但我仍然不确定为什么它是一个问题。我只是想我会分享我的经验,以防有人遇到同样的情况。如果有任何专家愿意告诉我问题的原因,那将是非常好的,我们将不胜感激。我总是喜欢知道为什么某些东西不起作用!我做了一个测试任务,如下:Randomrng=newRandom((int)DateTime.UtcNow.Ticks);intdelay=rng.Next(1500,15000);Task>testTask=Task.Factory.S

c# - 如何检查 Azure Blob 文件是否存在

我想检查AzureBlob存储中是否存在特定文件。是否可以通过指定文件名来检查?每次我收到文件未找到错误。 最佳答案 varblob=client.GetContainerReference(containerName).GetBlockBlobReference(blobFileName);if(blob.Exists())//doyourstuff 关于c#-如何检查AzureBlob文件是否存在,我们在StackOverflow上找到一个类似的问题: h