草庐IT

async-process

全部标签

c# - 为什么添加 Microsoft.Bcl.Async 包后,app.config 文件中会添加一个 "bindingRedirect"?

我想知道为什么nuget在安装Microsoft.Bcl.Async之后将以下代码添加到我的应用程序app.config文件中:如果我从配置中删除这个XML元素,应用程序将无法正常运行。据我所知,我们可以使用bindingRedirect让应用程序加载新版本或旧版本的程序集,以防我们在编译EXE时使用的版本消失。但是,我使用的版本正是2.5.19.0,那我为什么需要重定向?为什么我需要这个bindingRedirect? 最佳答案 程序集Microsoft.Threading.Tasks和Microsoft.Threading.Ta

c# - Visual Studio : auto attach to a process when the process is spawned

我想在进程(a.exe)生成后立即附加到它,是否可以使用VS?我只知道进程的名称。实际上我想要完成的是在c#代码中设置一个断点,但该代码属于另一个将由当前运行的应用程序(c.exe)启动的可执行文件。代码在初始化期间,所以我不可能手动进行附加。 最佳答案 当我以前遇到过这种情况(并且我控制了两个过程)时,我发现一个不错的解决方法是调用Debugger.Launch()在产卵过程的入口点。然后VS会弹出一个对话框让你附加到进程。 关于c#-VisualStudio:autoattachto

c# - 当异步方法未以 'Async' 结束时,如何在 Visual Studio 中收到警告?

每次创建不以“Async”结尾的异步方法时,如何让VisualStudio给我一个命名警告?这是异步方法的推荐约定,但我经常发现自己忘记添加该后缀,警告会很有用。 最佳答案 来自选项,转到文本编辑器→基本→代码风格→命名选择管理规范并添加新规范选择方法,勾选所有辅助功能选项,然后从修饰符中选择异步。将标题命名为异步方法并保存现在进入管理命名样式并添加新样式。添加Async作为后缀,命名为AsyncSuffix,然后保存现在按加号并创建新的命名。选择规范作为AsyncMethod,选择所需的Style作为AsyncPostfix,Se

C# - 制作 Process.Start 等待进程启动

在继续使用方法之前,我需要确保进程正在运行。语句是:Process.Start("popup.exe");您可以执行WAIT命令或设置此值的延迟吗? 最佳答案 你的意思是等到它完成了吗?然后使用Process.WaitForExit:varprocess=newProcess{StartInfo=newProcessStartInfo{FileName="popup.exe"}};process.Start();process.WaitForExit();或者,如果您正在等待进入消息循环的是具有UI的应用程序,您可以说:proces

c# - 为什么 "async void"单元测试无法识别?

asyncvoid单元测试无法在VisualStudio2012中运行:[TestClass]publicclassMyTestClass{[TestMethod]publicasyncvoidInvisibleMyTestMethod(){awaitTask.Delay(1000);Assert.IsTrue(true);}}如果我想进行异步单元测试,测试方法必须返回一个任务:[TestMethod]publicasyncTaskVisibleMyTestMethod(){awaitTask.Delay(1000);Assert.IsTrue(true);}为什么会这样?并不是说我绝

c# - Async PartialView 导致 "HttpServerUtility.Execute blocked..."异常

我有一个试图检索IEnumerable的部分View使用异步从数据库...方法publicstaticclassPostService{publicstaticintPostsPerPage=50;publicstaticasyncTask>GetRecentAsync(intpage=0){returnawaitentityFrameworkDbContext.Posts.ToListAsync();}}局部ViewpublicasyncTaskRecent(intpage=0){returnPartialView(awaitPostService.GetRecentAsync(pa

c# - Async await 关键字是否等同于 ContinueWith lambda?

有人可以确认我是否正确理解了Asyncawait关键字吗?(使用CTP版本3)到目前为止,我已经知道在方法调用之前插入await关键字基本上做了两件事,A。它创建一个立即返回,B。它创建一个“继续”,在异步方法完成时调用调用。在任何情况下,延续都是该方法代码块的剩余部分。所以我想知道的是,这两段代码在技术上是否等效,如果是,这是否基本上意味着await关键字与创建ContinueWithLambda相同(即:它基本上是一个编译器快捷方式)?如果不是,有什么区别?boolSuccess=awaitnewPOP3Connector("mail.server.com",txtUsername

c# - 生成错误 : "The process cannot access the file because it is being used by another process"

我有一个C#webforms应用程序,直到今天它一直运行顺畅。现在,突然之间,每次我尝试运行该应用程序时,我都会收到文件锁定错误:Unabletocopyfile"obj\Debug\MyProject.exe"to"bin\Debug\MyProject.exe".Theprocesscannotaccessthefile"bin\Debug\MyProject.exe"becauseitisbeingusedbyanotherprocess.谷歌搜索错误并没有发现明显的错误,即VS认为文件已锁定。绝对锁定文件的是VisualStudio本身,因为当我关闭VS并重新打开它时,项目执行

c# - 使用 SqlCommand Async 方法处理大数据时性能糟糕

我在使用异步调用时遇到了主要的SQL性能问题。我创建了一个小案例来演示这个问题。我在位于我们LAN中的SQLServer2016上创建了一个数据库(因此不是localDB)。在那个数据库中,我有一个包含2列的WorkingCopy表:Id(nvarchar(255,PK))Value(nvarchar(max))DDLCREATETABLE[dbo].[Workingcopy]([Id][nvarchar](255)NOTNULL,[Value][nvarchar](max)NULL,CONSTRAINT[PK_Workingcopy]PRIMARYKEYCLUSTERED([Id]A

c# - 方法名中使用 "Async"后缀是否取决于是否使用 'async'修饰符?

在方法名称后缀“Async”的约定是什么?是否应该将“Async”后缀仅附加到使用async声明的方法?修饰符?publicasyncTaskConnectAsync()或者该方法只返回Task就足够了吗?或Task?publicTaskConnectAsync() 最佳答案 我认为即使从Microsoft文档来看,事实也是模棱两可的:InVisualStudio2012andthe.NETFramework4.5,anymethodthatisattributedwiththeasynckeyword(AsyncinVisualB