首页 > 其他分享 >Task 笔计

Task 笔计

时间:2023-01-30 12:14:36浏览次数:33  
标签:Task Console Thread Start WriteLine TaskMethod 笔计

 

static void Main(string[] args)
{
    var t1 = new Task(() => TaskMethod("Task 1"));
    var t2 = new Task(() => TaskMethod("Task 2"));
    t2.Start();
    t1.Start();
    Task.WaitAll(t1, t2);
    Task.Run(() => TaskMethod("Task 3"));
    Task.Factory.StartNew(() => TaskMethod("Task 4"));
    //标记为长时间运行任务,则任务不会使用线程池,而在单独的线程中运行。
    Task.Factory.StartNew(() => TaskMethod("Task 5"), TaskCreationOptions.LongRunning);
    
    #region 常规的使用方式
    Console.WriteLine("主线程执行业务处理.");
    //创建任务
    Task task = new Task(() =>
                         {
                             Console.WriteLine("使用`System.Threading.Tasks.Task`执行异步操作.");
                             for (int i = 0; i < 10; i++)
                             {
                                 Console.WriteLine(i);
                             }
                         });
    //启动任务,并安排到当前任务队列线程中执行任务(System.Threading.Tasks.TaskScheduler)
    task.Start();
    Console.WriteLine("主线程执行其他处理");
    task.Wait();
    #endregion

    Thread.Sleep(TimeSpan.FromSeconds(1));
    Console.ReadLine();
}

static void TaskMethod(string name)
{
    Console.WriteLine("Task {0} is running on a thread id {1}. Is thread pool thread: {2}",
                      name, Thread.CurrentThread.ManagedThreadId, Thread.CurrentThread.IsThreadPoolThread);
}

  

标签:Task,Console,Thread,Start,WriteLine,TaskMethod,笔计
From: https://www.cnblogs.com/KAKAXI01/p/17075073.html

相关文章

  • 技术汇总:第九章:任务调度SpringTask
    什么是任务调度在企业级应用中,经常会制定一些“计划任务”,即在某个时间点做某件事情,核心是以时间为关注点,即在一个特定的时间点,系统执行指定的一个操作。常见的任务调度框......
  • C#:终于有人把 ValueTask、IValueTaskSource、ManualResetValueTaskSourceCore 说清楚
    目录1,可用版本与参考资料2,ValueTask<TResult>和Task3,编译器如何编译4,ValueTask有什么优势5,ValueTask创建异步任务6,IValueTaskSource和自定义包装ValueTask......
  • C#异步方法中Task.WhenAll的使用
    一、说明Task.WhenAll()、Task.WhenAny()这两个与Task.WaitALL()、Task.WaitAny()是有区别的,When是异步的,Wait是同步的。Task.WhenAll():所有task完成时,task才完成,用于等待......
  • struct task_struct 源代码
    //structtask_struct代码structtask_struct{#ifdefCONFIG_THREAD_INFO_IN_TASK /* *Forreasonsofheadersoup(seecurrent_thread_info()),this *......
  • C#异步延迟Task.Delay()的使用
    一、要在异步方法中需要延迟代码继续往下执行可以使用awaitTask.Delay(),效果类似Thread.Sleep()。两者之间的不同是1、await Task.Delay实质创建一个运行给定时间的任......
  • 2021 ACL Parameter-efficient Multi-task Fine-tuning for Transformers via Shared
    Parameter-efficientMulti-taskFine-tuningforTransformersviaSharedHypernetworks阅读这篇文章的目的是为了了解hypernet,相关代码https://github.com/rabeehk/hyp......
  • 动手学数据结构 -- Task02_3
    复习:回顾学习完第一章,我们对泰坦尼克号数据有了基本的了解,也学到了一些基本的统计方法,第二章中我们学习了数据的清理和重构,使得数据更加的易于理解;今天我们要学习的是第二......
  • Datawhale组队学习——人工智能:一种现代方法(第四版)Task02学习笔记
    第二章智能体智能体智能体是在环境中感知和行动的事物。智能体=架构+程序一个智能体在任何给定的时刻的动作选择可能取决于内置知识和迄今为止观察到的整个感......
  • 动手学数据分析 -- Task02_2
    复习:在前面我们已经学习了Pandas基础,第二章我们开始进入数据分析的业务部分,在第二章第一节的内容中,我们学习了数据的清洗,这一部分十分重要,只有数据变得相对干净,我们之后对......
  • 动手学数据结构 -- Task02_1
    【回顾&引言】前面一章的内容大家可以感觉到我们主要是对基础知识做一个梳理,让大家了解数据分析的一些操作,主要做了数据的各个角度的观察。那么在这里,我们主要是做数据分析......