草庐IT

ios-long-running-background-task

全部标签

c# - System.IO.File.Move--如何等待移动完成?

我正在用C#编写一个WPF应用程序,我需要移动一些文件——问题是我真的真的需要知道这些文件是否成功。为此,我写了一个检查以确保文件在移动后到达目标目录——问题是有时我在文件移动完成之前就进行了检查:System.IO.File.Move(file.FullName,endLocationWithFile);System.IO.FileInfo[]filesInDirectory=endLocation.GetFiles();foreach(System.IO.FileInfotempinfilesInDirectory){if(temp.Name==shortFileName){ret

c# - 如何使用 Xamarin 在 iOS 8 中制作表格单元格和分隔符全宽?

我们有许多表格View(使用XamarinMonotouchDialog),它们是普通的(未分组的)并且设计为全角显示而没有缩进。这在iOS7中一切正常。不过使用iOS8模拟器时,我们得到了轻微的左缩进。iOS8有一个名为LayoutMargins的新属性。我们将该属性设置为零。像这样:if(this.TableView.RespondsToSelector(newSelector("setSeparatorInset:")))this.TableView.SeparatorInset=UIEdgeInsets.Zero;if(this.TableView.RespondsToSele

c# - System.IO.Directory.GetFiles 空

当我枚举“C:\Windows\System32\Tasks”时,谁能解释为什么GetFile()为空?System.IO.Directory.GetFiles(@"C:\Windows\System32\Tasks");我检查过这个:VS以管理员身份运行没有抛出异常根目录下有文件我可以(通过资源管理器)将文件复制到另一个文件夹,而且它可以工作 最佳答案 这里的问题是您正在以x86运行程序,它是beingsilentlyredirectedtoanotherfolder里面没有文件。(它将被重定向到C:\Windows\SysWOW

c# - 为什么 Task.ContinueWith 在此单元测试中执行失败?

我遇到了一个单元测试失败的问题,因为TPL任务从未执行过它的ContinueWith(x,TaskScheduler.FromCurrentSynchronizationContext())。问题原来是因为在任务启动之前不小心创建了一个WinformsUI控件。这是一个重现它的例子。您会看到,如果您按原样运行测试,它就会通过。如果您在未注释Form行的情况下运行测试,它将失败。[TestClass]publicclassUnitTest1{[TestMethod]publicvoidTestMethod1(){//CreatenewsynccontextforunittestSynch

c# - Xamarin.iOS ARKit 演示项目错误 : “32-bit architectures are not supported when deployment target is 11 or later"

从https://developer.xamarin.com/samples/monotouch/ios11/ARKitSample/部署ARKit示例项目时,我收到构建错误Invalidarchitecture:ARMv7。当部署目标为11或更高版本时,不支持32位架构。所有与部署设备和我的开发机器一起检查:我在部署设备上运行iOS11(iPhone6SPlus-ARKit不会在模拟器中运行),并且安装了Xcode9(并且在启动VisualStudioforMac之前启动过一次)。VisualStudioforMac也已更新到最新的稳定版本(ARKit目前在Alpha和Beta版本中

c# - WebRequest 在 ASP.NET 应用程序中失败并显示 "414 Request URI too long"

我们有一个ASP.NET应用程序,它在将报告参数作为WebRequest传递后请求HTML格式的SSRS2005报告。应用程序仅在请求具有大量多选参数的报告时失败,在webRequest.GetResponse()行抛出“414:请求URI太长”错误。用于发出请求的代码是:HttpWebRequestwebRequest=null;HttpWebResponsewebResponse=null;stringwebRequestURL=_ReportManager.GetRSUrl(reportID);//thispassesthereportlinkontheSSRSserver//m

c# - Task.WhenAll() - 它会创建一个新线程吗?

根据MSDN:Createsataskthatwillcompletewhenallofthesuppliedtaskshavecompleted.当调用Task.WhenAll()时,它会创建一个任务,但这是否一定意味着它会创建一个新线程来执行该任务?例如,下面这个控制台应用程序中创建了多少个线程?classProgram{staticvoidMain(string[]args){RunAsync();Console.ReadKey();}publicstaticasyncTaskRunAsync(){Stopwatchsw=newStopwatch();sw.Start();Tas

c# - HttpClient.SendAsync 使用线程池而不是异步 IO?

所以我一直在深入研究HttpClient.SendAsync的实现通过反射器。我有意想知道这些方法的执行流程,并确定调用哪个API来执行异步IO工作。探索里面的各个类之后HttpClient,我看到它在内部使用HttpClientHandler源自HttpMessageHandler并实现其SendAsync方法。这是HttpClientHandler.SendAsync的实现:protectedinternaloverrideTaskSendAsync(HttpRequestMessagerequest,CancellationTokencancellationToken){if(r

c# - ASP.NET VNext 完整 CLR 中的 System.IO.Compression

我正在尝试在VS2015预览版的ASP.NETVNext类库中使用System.IO.Compression.ZipArchive。我使用NuGet添加了System.IO.Compression包,并将其作为aspnetcore50依赖项添加到我的project.json中。当我尝试使用ZipArchive时,智能感知显示在ASP.NET5.0中不可用,但在ASP.NETCore5.0中可用。如果我使用顶部栏中的下拉菜单切换到使用ASP.NETCore,那么我的代码会按预期工作,但是当我选择普通ASP.NET时它不起作用。我尝试手动将它添加为project.json中的aspnet5

c# - 它有什么区别 - 使用 Task.Run 运行 'async' Action 委托(delegate)(与默认 Action 委托(delegate)相比)?

我正在努力了解async/await并认为我确实了解有关用法的一些事情。但仍然不太清楚在下面的场景中实际好处是什么。查看Task.Run用法。第一种方法使用普通委托(delegate)并使用Thread.Sleep,但第二种方法使用“异步”委托(delegate)和Task.Delay。我的问题是:这对这个方法有什么影响(或没有影响)?该方法本身是一个异步方法。该代码正在创建一个单独的线程(通过Task.Run),并且该线程除了执行该委托(delegate)之外别无他法。因此,即使它在Task.Delay上产生等待,在这种情况下有什么用,因为线程无论如何都是一个孤立的线程,不用于任何其