【c# – 同时运行任务.NET 4.5】教程文章相关的互联网学习教程文章

WPF C#:使用任务【代码】

我已经阅读了几个不同的帖子,我真的无法理解这个! 我有以下类,当用户选择了一个驱动器并设置DriveInfo时,运行DoUpload方法,并将一堆图像转换为字节格式. 现在这需要几秒钟在我的机器上,但是更多的图像和更慢的机器可能需要更长的时间,所以我想在另一个线程上执行此操作,但每次转换图像时,我想通知UI,在我的情况下我想要更新以下属性:缩略图,文件名,步骤,UploadProgress. 同样,我想在每次转换图像时更新上面的属性,如何使用Task A...

c# – 将参数或参数传递给Uwp中的后台任务【代码】

我正在创建一个uwp应用程序,我想从用户说从文本框中获取一些数据,然后将其传递给后台任务.但是当我试图将项目引用添加到后台任务时,我得到一个循环引用错误.那么有没有办法传递参数可能是运行函数或其他任何东西的重载.提前致谢.解决方法:Romasz已经完美地解释了它,但在您的情况下,您可以通过以下步骤从文本框中获取用户数据: 1.在MainPage.xaml.cs(或你的xaml页面)中声明这个var localSettings = Windows.Storage.ApplicationDat...

c# – 如何在ASP.NET中运行后台任务

我需要在每5分钟后在Asp.net MVC中运行一些任务.我从来没有做过这样的功能.所以我用Google搜索并获得了一些实现此功能的选项.这些是选项here,here和here 我查看了上面的链接.这些都只是让人混淆选择运行后台进程的最佳进程. 我是这个功能的新手,这就是我在这里讨论/询问实现它的几种方法的原因.解决方法:您可以使用Hangfire它是ASP.NET中后台作业的绝佳框架.您可以找到HangFie Tutorial Here. Hangfire的最佳功能是内置/挂起仪表板...

c# – WPF TPL重新启动已取消的任务【代码】

这是我的问题:我使用Click事件取消了一个可以正常工作的任务.现在,我想通过单击最初启动任务的同一启动事件来重新启动任务.我得到的“错误”是我收到MessageBox信息(“Stop Clicked”).所以我“陷入”清理任务中. 我该如何解决这个问题?非常感谢帮助. 谢谢! 这是我的代码:public partial class MainWindow { CancellationTokenSource cts = new CancellationTokenSource();ParallelOptions po = new ParallelOptions(); } pr...

c# – 返回任务的Web Api方法的缺点【代码】

为什么返回任务< T>的做法从Web Api方法而不是默认和在Visual Studio中创建新的Web Api控制器时获得的方法? 这样做有什么不利之处吗?public class MyController : ApiController {public Task<string> Boo(){return Task.Factory.StartNew(() =>{return "Boo";});} }解决方法:Are there any disadvantages to doing this?是的,你没有充分的理由让你的代码更不易读,更长,性能也更差.我没有看到这样做的任何好处.

c# – 在不阻止UI线程的情况下从任务返回【代码】

我有一个返回数据表的方法.我需要在一个线程中运行所有的sql东西,然后能够传回一个数据表,而不会阻塞UI线程.根据我的理解,当您调用Task.Result时,它会阻止UI线程,直到任务完成.我该如何解决这个问题.我读到了关于使用await和async的问题,但我还没有弄清楚如何在任务中使用它.public static DataTable LaunchLocationMasterListReport(ObservableCollection<string> BuiltConditionsList, ObservableCollection<string> BuiltSortLi...

在c#字典中引用异步任务【代码】

我现在遇到了几个程序中字典中异步任务的问题,我无法解决如何解决问题. 我有一个异步任务,如下所示:MessageEventArgs.Channel.SendMessage("somestring");MessageEventArgs是第三方库中的一个类,我在程序开始时静态声明:public static MessageEventArgs meargs;程序侦听IRC通道中的事件,并根据文本命令执行操作.我没有为每个命令设置一个巨大的switch语句,而是想创建一个与字符串匹配的字典.并非所有都只是发送消息,所以我不能只...

c# – 使用Task.WaitAll()时如何获取任务的返回值【代码】

参见英文答案 > How do I get a return value from Task.WaitAll() in a console app? 2个我需要获得多个任务< List< string>>的返回值并行执行并将它们合并到一个新的List< string>中. 这就是我目前所拥有的.正如您在小提琴中看到的那样,任务正在并行执行(执行时间约为1秒).问题是不知道如何从每次执行中获取返回值(List< string>对象),因此我可以合并它们. 小提琴:https://dotnetfiddle.net...

c# – async await从内部任务结果中获取异常【代码】

给出以下代码段:public Task StartReading() {var activityCheck = Task.Factory.StartNew(async () => await this.CheckActivityTimeout(), this._token.Token).Unwrap();var reading = Task.Factory.StartNew(async () => await this.ReadAsync(), this._token.Token).Unwrap();// for reference, this code produces the same result:// var activityCheck = this.CheckActivityTimeout();// var reading = this.ReadAsync();r...

c# – 任务运行时停止任务【代码】

参见英文答案 > Async/await for long-running API methods with progress/cancelation 1个如何在任务运行时完全停止任务?private async void button1_Click(object sender, EventArgs e) {await Backup(file); }public async Task Backup(string File) {await Task.Run(() =>{1)do something here2)do something here3)do something here}); } private async void button2_Click(object send...

c# – 多个等待来自FIFO顺序的单个线程恢复到同一个任务?【代码】

假设从单个线程创建并等待多次Task.恢复订单是FIFO吗? 简单的例子:Debug.Assert()真的是一个不变的吗?Task _longRunningTask;async void ButtonStartSomething_Click() {// Wait for any previous runs to complete before starting the nextif (_longRunningTask != null) await _longRunningTask;// Check our invariantDebug.Assert(_longRunningTask == null, "This assumes awaits resume in FIFO order");// Initialize_l...

c# – UWP后台任务未执行【代码】

我是uwp的新手,我正在努力学习如何完成后台任务.我试着按照我在网上找到的指示,但似乎无法使其正常工作.我没有得到明确的错误,但我的后台任务没有写入调试控制台.任何帮助将不胜感激. 这是我的主要xaml 这是我的主页课 这是Windows运行时组件项目中的后台任务(“MyBackgroundTask”) 这是我的表现 这是在我按下按钮之前 这是在我按下按钮之后解决方法:目前,您正在使用ApplicationTrigger作为BackgroundTask.这将允许您以编程方式开...

在C#中分配任务堆栈在哪里?

我们都知道Task.Run或Parallel.ForEach等方法.它们中的每一个都创建根据单独线程中的选项或线程池中的线程运行的任务.但是,他们的筹码在哪里?在某些一代堆还是有特殊的地方? 例如,我可以创建1000个任务,他们的堆栈在哪里?如果我调用GC.Collect(),它们的物理地址是否会在某个时刻移动?解决方法:堆栈是纯粹的非托管实现细节.处理器需要一个堆栈来完成任何事情,没有它就无法有意义地执行任何代码.它强烈依赖于一个线程,这是普通CL...

c# – UWP中远程应用程序服务后台任务的限制【代码】

我想知道远程设备调用后台任务的限制是什么.我在微软的文档中发现的只是后台任务的一般限制,即30秒. 但我的简单测试表明,从其他设备调用的应用服务并非如此. (我不确定常规应用程序服务.我没有在测试中包含它们) 这是我的测试方法: 我将此代码放到应用程序的OnBackgroundActivated并注册了TimeTrigger后台任务.for (int i = 0; i < 100; i++){Common.ToastFunctions.SendToast((i * 5).ToString() + " seconds");await System.Thr...

c# – 将任务字典转换为结果字典【代码】

我有一个程序,必须处理许多对象并产生分析.每个分析都会生成一个字符串,并连接字符串以创建报告.报告需要按特定顺序排列结果,但我想异步分析每个项目,所以我通过将所有内容放入字典来管理它,然后我可以在准备最终输出之前对其进行排序. 注意:为了这个例子,我将假装我们正在分析当前程序集中的类型,尽管在我的情况下它比这更复杂. 这样做的基本模式(我认为)将是这样的:var types = myAssembly.GetTypes(); var tasks = types.ToDi...

运行 - 相关标签