(Task)任务异步(TAP)的使用
任务有返回值例子:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace Demo
{
class Program
{ static void Main(string[] args)
{ System.Threading.Tasks.Task<string> task = Task.Factory.StartNew<string>(Test); Console.WriteLine("Result:" + task.Result);
Console.WriteLine("Status:" + task.Status);
Console.WriteLine("IsFaulted:" + task.IsFaulted);
Console.WriteLine("IsCompleted:" + task.IsCompleted);
Console.WriteLine("IsCanceled:" + task.IsCanceled);
Console.ReadKey();
} public static string Test()
{
Console.WriteLine("调用test方法:"+"ddddfdfd");
return "调用异步方法返回的结果";
} }
}
下图是上面的代码的运行结果:
没有返回值的任务:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace Demo
{
class Program
{ static void Main(string[] args)
{ System.Threading.Tasks.Task task = Task.Factory.StartNew(Test); Console.WriteLine("Status:" + task.Status);
Console.WriteLine("IsFaulted:" + task.IsFaulted);
Console.WriteLine("IsCompleted:" + task.IsCompleted);
Console.WriteLine("IsCanceled:" + task.IsCanceled);
Console.ReadKey();
} public static void Test()
{
Console.WriteLine("调用test方法:"+"ddddfdfd");
} }
}
下面是上述代码运行的结果:
(Task)任务异步(TAP)的使用的更多相关文章
- 实践基于Task的异步模式
Await 返回该系列目录<基于Task的异步模式--全面介绍> 在API级别,实现没有阻塞的等待的方法是提供callback(回调函数).对于Tasks来说,这是通过像ContinueW ...
- 实现基于Task的异步模式
返回该系列目录<基于Task的异步模式--全面介绍> 生成方法 编译器生成 在.NET Framework 4.5中,C#编译器实现了TAP.任何标有async关键字的方法都是异步方法,编 ...
- 基于Task的异步模式的定义
返回该系列目录<基于Task的异步模式--全面介绍> 命名,参数和返回类型 在TAP(Task-based Asynchronous Pattern)中的异步操作的启动和完成是通过一个单独 ...
- Task的异步模式
Task的异步模式 返回该系列目录<基于Task的异步模式--全面介绍> 生成方法 编译器生成 在.NET Framework 4.5中,C#编译器实现了TAP.任何标有async关键字的 ...
- 基于Task的异步模式--全面介绍
今天是国庆长假第一天,也是今天十月的开始.每到这个时候都是看海的季节-一个看"人海"的季节.反正我是不想在这样一个尴尬期出去放松自己,于是不如在家写写博客,长点本领呢.今天就来给大 ...
- 使用任务Task 简化异步编程
使用任务简化异步编程 Igor Ostrovsky 下载代码示例 异步编程是实现与程序其余部分并发运行的较大开销操作的一组技术. 常出现异步编程的一个领域是有图形化 UI 的程序环境:当开销较大的操作 ...
- C# Winform 基于Task的异步与延时执行
一.Task的机制 Task位于命名空间System.Threading.Tasks中,是.NET 4.0加入的新模块,其实现机制大致类似于线程池ThreadPool,不过对于ThreadPool ...
- 使用 Task 简化异步编程
.Net 传统异步编程概述 .NET Framework 提供以下两种执行 I/O 绑定和计算绑定异步操作的标准模式: 异步编程模型 (APM),在该模型中异步操作由一对 Begin/End 方法(如 ...
- await Task传异步Lambda问题
微软在.NET4.5中升级了C#语言到5.0,加入了await和async语法,极大地方便了广大开发人员的异步编程,也是为了和WinRT API配套,因为这套API充满了异步编程. 在开发过程中发现有 ...
随机推荐
- JavaScript的Ajax请求示例
//创建XMLHttpRequest对象 var request = false; try { request = new ...
- 通过 JDBC 驱动程序使用大容量复制
Microsoft SQL Server 包含一个名为 bcp 的受欢迎的命令行实用工具,以便将较大文件快速大容量复制到 SQL Server 数据库的表或视图中. SQLServerBulkCopy ...
- Android本地数据存储复习
Android本地数据存储复习 Android无论是应用层还是系统层都需要在本地保存一些数据,尤其在应用层中使用的就更为普遍,大体有这么几种:SharedPreference,file,sqlite数 ...
- VBoxManage: error: Cannot register the hard disk 解决办法
将虚拟盘从一个分区拷到另外一个分区上,打开虚拟机挂载这个虚拟盘老是报错,VBoxManage: error: Cannot register the hard disk '/media/New Vol ...
- Apache连接PHP后无法启动问题解决思路
问题:apache之前正常,连接配置完PHP后无法启动,用apache Test Configration测试后报错形式为: Cannot load D:/php/php5apache2_2.dll ...
- 网络流EK
#include <iostream> #include <queue> #include <string.h> #define MAX 302 using nam ...
- 一步一步安装hive
安装hive 1.下载hive-0.11.0.tar.gz,解压; 2.下载mysql-connector-java-5.1.29-bin.jar并放到hive/lib/下: 3.配置hive/con ...
- C# .NET 隐藏窗体
隐藏窗体,打开窗体后如果想让它隐藏,然后再显示出来,就判断是不是NULL或者有没有关闭,不然就NEW一个出来,否则就SHOW出来. 当然如果有隐藏的话退出的时候最好用Application.Exit( ...
- 错误:Implicit super constructor xx() is undefined for default constructor. Must define an explicit constructor
错误:Implicit super constructor xx() is undefined for default constructor. Must define an explicit con ...
- 开启个人blog~
希望自己能坚持写blog,不断的总结,不断的沉淀.