iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C#代码延时的几种实现
  • 616
分享到

C#代码延时的几种实现

2024-04-02 19:04:59 616人浏览 独家记忆
摘要

目录Task.Delay();异步实现线程实现:计时器方式实现:Task.Delay();异步实现 using System; using System.Threading.Ta

Task.Delay();异步实现


using System;
using System.Threading.Tasks;

namespace csharpYS
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Mian方法第一次输出...");
            #region 第一种形式 
            var task_1 = Task.Run(async delegate
            {
                await Task.Delay(3000);
                Console.WriteLine("3秒后执行,方式一 输出语句...");
                return "异步执行result"; //可以得到一个返回值(int,bool,string都试了)
            });
            #endregion

            Console.WriteLine("Mian方法第二次输出,调用延时...");
            Console.WriteLine("task_1 的 Status:{0}, 结果: {1}",task_1.Status, task_1.Result);
            Console.WriteLine("第一种形式,延时结束...");

            #region 第二种形式
            Task task_2 = Task.Run(task_YS);
            //task_2.Wait();  //注释打开则等待task_2延时,注释掉则不等待
            #endregion

            Console.WriteLine("Mian方法最后一次输出,Main方法结束...");
            Console.ReadKey();
        }

        public static async Task task_YS()
        {
            await Task.Delay(5000);
            Console.WriteLine("5秒后执行,方式二 输出语句...");
        }
    }

}

下图一为注释运行结果,图二为注释打开运行结果:(建议使用时自行实践)

在这里插入图片描述

在这里插入图片描述

觉得上面方法不适用的童鞋,可以试试使用线程的方式:

线程实现:

简例:


using System;
using System.Collections;
using System.Collections.Generic;
using System.Threading;

namespace ExceptionDeme
{
    class ThreadDemo
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Main方法开始执行...");
            Thread threadA = new Thread(DownLoadFile);
            threadA.Start();
            Console.WriteLine("Main方法执行结束...");

            Console.ReadKey();
        }

        static void DownLoadFile()
        {
            //模拟开始下载 2S 后完成
            Console.WriteLine("开始下载,此协程的Id是:" + Thread.CurrentThread.ManagedThreadId);
            Thread.Sleep(2000);
            Console.WriteLine("下载完成");
        }
}

运行结果

相关连接:
C# 线程简介
C# 开启线程的几种方式

计时器方式实现:


 class Program
    {
        static void Main(string[] args)
        {
   			Console.WriteLine("Czhenya  ... Main Start");
            WaitFunctions(2);
            Console.WriteLine("Czhenya  ... Main End");
		}
		
 	    public static void WaitFunctions(int waitTime)
        {
            if (waitTime <= 0) return;

            Console.WriteLine("开始执行 ...");
            DateTime nowTimer = DateTime.Now;
            int interval = 0;
            while (interval < waitTime)
            {
                TimeSpan spand = DateTime.Now - nowTimer;
                interval = spand.Seconds;
            }

            Console.WriteLine(waitTime + "秒后继续 ...");
        }
  }

执行截图:

rus

到此这篇关于C#代码延时的几种实现的文章就介绍到这了,更多相关C# 代码延时内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C#代码延时的几种实现

本文链接: https://www.lsjlt.com/news/131845.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#代码延时的几种实现
    目录Task.Delay();异步实现线程实现:计时器方式实现:Task.Delay();异步实现 using System; using System.Threading.Ta...
    99+
    2024-04-02
  • C#中怎么实现代码延时
    本篇文章给大家分享的是有关C#中怎么实现代码延时,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Task.Delay();异步实现using System;using&...
    99+
    2023-06-20
  • js实现0ms延时定时器的几种方式
    目录queueMicrotask async/await MessageChannel 最后 附录 这两天看到一篇介绍《如何实现准时的 setTimeout?》的文章,文章起源于一道...
    99+
    2024-04-02
  • SpringBoot启动时自动执行代码的几种实现方式
    目录前言java自身的启动时加载方式static代码块构造方法Spring启动时加载方式代码测试总结前言 目前开发的SpringBoot项目在启动的时候需要预加载一些资源。而如何实现...
    99+
    2024-04-02
  • 【Android】之【延时执行的几种方法】
    在Android日常开发中我们经常会有延时执行某个操作的需求,例如我们启动应用的时候,开始呈现一个引导页面,过了两三秒后,自动跳转到主界面;又如为了控制时序,需要延时执行等等。 下面整理下实现延时执行...
    99+
    2023-08-31
    android
  • C#中[]的几种用法示例代码
    目录一、导入外部DLL函数二、结构体时表明属性总结一、导入外部DLL函数 如[DllImport(“kernel32.dll”)]这叫引入kernel32.d...
    99+
    2023-01-28
    c# [] c#中[]的使用
  • 实现bat文件暂停延时的脚本代码
    这篇文章将为大家详细讲解有关实现bat文件暂停延时的脚本代码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。ping 192.0.2.2 -n 1 -w 10000 > nul该-w 10000部分指...
    99+
    2023-06-08
  • 延时任务的四种实现方式
    什么是延迟任务? 顾明思议,我们把需要延迟执行的任务叫做延迟任务。 延迟任务的使用场景有以下这些: 红包 24 小时未被查收,需要延迟执退还业务; 每个月账单日,需要给用户发送当月的对账单; 订单下单之后 30 分钟后,用户如果没...
    99+
    2023-10-04
    java Powered by 金山文档
  • RabbitMQ延时队列详解与Java代码实现
    目录RabbitMQ 延时队列介绍使用插件实现延时队列使用DLX机制实现延时队列Java语言设置延时队列安装插件创建延时交换机创建延时队列发送延时消息消费延时消息RabbitMQ延时...
    99+
    2023-05-18
    Java实现延时队列 RabbitMQ延时队列
  • c#判断代码是否执行超时的几种方式总结
    目录c#判断代码是否执行超时一、使用委托二、使用Task三、使用Timer四、使用Thread总结c#判断代码是否执行超时 一、使用委托 delegate void dg(); dg...
    99+
    2023-01-28
    c#判断代码 判断代码执行超时 c#代码执行超时
  • Java实现几种常见排序算法代码
    稳定度(稳定性)一个排序算法是稳定的,就是当有两个相等记录的关键字R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。 排序算法分类 常见的有插入(插入排序/...
    99+
    2022-11-15
    Java 排序算法
  • 几种PHP实现随机显示图片代码
    简介: 新建一个index.php文件,将代码放置在内,图片放置相同目录下。 方法一: ...
    99+
    2023-09-12
    php 开发语言 服务器
  • MySQL时间盲注的五种延时方法实现
    MySQL时间盲注五种延时方法 (PWNHUB 非预期解) 延时注入函数 五种:sleep(),benchmark(t,exp),笛卡尔积,GET_LOCK() RLIKE正则 sl...
    99+
    2024-04-02
  • Python获取代码运行时间的几种方法
    Python获取代码运行时间的几种方法1、方法一:#python 的标准库手册推荐在任何情况下尽量使用time.clock().#只计算了程序运行CPU的时间,返回值是浮点数import timestart =time.clock()#中...
    99+
    2023-01-31
    几种方法 代码 时间
  • python 统计代码耗时的几种方法分享
    目录时间戳相减 装饰器 timeit模块 重复调用 timeit()cProfile性能分析工具 时间戳相减 在代码执行前后各记录一个时间点,两个时间戳相减即程序运行耗时。 获取时...
    99+
    2024-04-02
  • C#实现PDF签名时添加时间戳的2种方法(附VB.NET代码)
    在PDF添加签名时,支持添加可信时间戳来保证文档的法律效应。本文,将通过C#程序代码介绍如何添加可信时间戳,可通过2种方法来实现。文中附上VB.NET代码,有需可供参考。 一、程序运...
    99+
    2024-04-02
  • Springboot+rabbitmq实现延时队列的两种方式
    目录什么是延时队列,延时队列应用于什么场景利用TTL DLX实现延时队列的方式TTL DLX是什么Springboot集成rabbitmq实现第一种方式利用Rabbitmq的插件x-...
    99+
    2024-04-02
  • C# Linq延迟查询的执行实例代码
    C# Linq延迟查询 在定义linq查询表达式时,查询是不会执行,查询会在迭代数据项时运行。它使用yield return 语句返回谓词为true的元素。 var names ...
    99+
    2024-04-02
  • 几种实用的HTML5代码生成器分享
    这篇文章主要介绍“几种实用的HTML5代码生成器分享”,在日常操作中,相信很多人在几种实用的HTML5代码生成器分享问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”几种实用的H...
    99+
    2024-04-02
  • Python的几种实现
    Python自身作为一门编程语言,它有多种实现。这里的实现指的是符合Python语言规范的Python解释程序以及标准库等。这些实现虽然实现的是同一种语言,但是彼此之间,特别是与CPython之间还是有些差别的。下面分别列出几个主要的实现。...
    99+
    2023-01-31
    几种 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作