C#暂停和恢复(Thread.Suspend()和Thread.Resume() vs AutoResetEvent()和EventWaitHandle())

目录

一、Thread.Suspend()和Thread.Resume()

二、AutoResetEvent()和EventWaitHandle()

1.AutoResetEvent()

2.EventWaitHandle()

3.示例及生成效果 


一、Thread.Suspend()和Thread.Resume()

        自 .NET 2.0 以后(含),Thread.Suspend() 和 Thread.Resume() 这两个方法已过时,被VS抛弃。不被任何现在流行的VS支持使用。

        Thread.Suspend 方法 (System.Threading) | Microsoft Learn  https://learn.microsoft.com/zh-cn/dotnet/api/system.threading.thread.suspend?view=net-8.0

        Thread.Resume 方法 (System.Threading) | Microsoft Learn  https://learn.microsoft.com/zh-cn/dotnet/api/system.threading.thread.resume?view=net-8.0 

        只支持历史版本.NET Framework 1.1。.NET Framework.NET Framework

产品版本 (已过时)
.NET(Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8)
.NET Framework1.1 (2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1)
.NET Standard(2.0, 2.1)
Xamarin.iOS(10.8)
Xamarin.Mac(3.0)

         Thread.Suspend()和Thread.Resume()使用示例,可以参考作者的文章:

         C#的线程技术及操作(Thread类)-CSDN博客  https://blog.csdn.net/wenchm/article/details/134899365?spm=1001.2014.3001.5501

二、AutoResetEvent()和EventWaitHandle()

        AutoResetEvent()和EventWaitHandle() 是上述方法被废弃后的替代方法。

1.AutoResetEvent()

        表示线程同步事件在一个等待线程释放后收到信号时自动重置。 此类不能被继承。

        命名空间:System.Threading

        AutoResetEvent 类 (System.Threading) | Microsoft Learn  https://learn.microsoft.com/zh-cn/dotnet/api/system.threading.autoresetevent?view=net-8.0

2.EventWaitHandle()

         表示一个线程同步事件。

        命名空间:System.Threading 

        EventWaitHandle 类 (System.Threading) | Microsoft Learn  https://learn.microsoft.com/zh-cn/dotnet/api/system.threading.eventwaithandle?view=net-8.0

3.示例及生成效果 

// 通过实例化Thread类对象创建一个新的线。
// 最后调用Start()方法启动该线程
using System.Threading;
namespace _02_1
{class Program{/// <summary>/// 用线程起始点的ThreadStart委托创建该线程的实例/// </summary>static void Main(string[] args){Thread myThread;									//声明线程myThread = new Thread(new ThreadStart(CreateThread));myThread.Start();									//启动线程/*myThread.Suspend();		*/						//挂起线程,或者如果线程已挂起,则不起作用。 CS0618//myThread.Resume();							    //恢复/继续已挂起的线程。CS0618WorkerThread();                                    //挂起线程StartWorking();                                     //继续已挂起的线程}public static void CreateThread(){Console.Write("创建线程");}public static EventWaitHandle wh = new AutoResetEvent(false);private static void WorkerThread(){while (true){wh.WaitOne();//Do work.}}public static void StartWorking(){wh.Set();}}
}
/*创建线程  */

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/212571.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

性能监控体系:InfluxDB Grafana Prometheus

InfluxDB 简介 什么是 InfluxDB &#xff1f; InfluxDB 是一个由 InfluxData 开发的&#xff0c;开源的时序型数据库。它由 Go 语言写成&#xff0c;着力于高性能地查询与存储时序型数据。 InfluxDB 被广泛应用于存储系统的监控数据、IoT 行业的实时数据等场景。 可配合 Te…

SSD基础架构与NAND IO并发问题探讨

在我们的日常生活中&#xff0c;我们经常会遇到一些“快如闪电”的事物&#xff1a;比如那场突如其来的雨、那个突然出现在你眼前的前任、还有就是今天我们要聊的——固态硬盘&#xff08;SSD&#xff09;。 如果你是一个技术宅&#xff0c;或者对速度有着近乎偏执的追求&…

电阻知识总结与详细选型指南

目录 1. 基础知识 1.1 电阻的定义和符号 1.2 电阻的公式 1.3 电阻的串联与并联 2. 参数选型 2.1 电阻值 2.2 功率 2.3 精度 2.4 温度系数 2.5 电压系数 2.6 包装类型 2.7 耐压 2.8 特殊应用需求 2.9 环保要求 3. 产品应用 3.1 电流限制和保护 3.2 电压分压和电…

【Qt开发流程】之容器类1:介绍及常用容器类和使用Java风格迭代器进行遍历

概述 Qt库提供了一组通用的基于模板的容器类。这些类可用于存储指定类型的项。例如&#xff0c;如果需要一个可调整大小的QString数组&#xff0c;可以使用QVector<QString>。 这些容器类被设计成比STL容器更轻、更安全、更易于使用。如果不熟悉STL&#xff0c;或者更喜…

低多边形3D建模石头材质纹理贴图

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 当谈到游戏角色的3D模型风格时&#xff0c;有几种不同的风格&#xf…

云计算在计算机领域的应用与发展

云计算在计算机领域的应用与发展 一、引言 随着科技的不断发展&#xff0c;计算机领域已经成为当今社会最为活跃和创新的领域之一。云计算作为一种新兴的计算模式&#xff0c;已经在计算机领域中得到了广泛的应用&#xff0c;并且正在不断地推动着计算机领域的发展。本文将探…

Ultimate VFX

Ultimate VFX 构建套件:

【利用二手车数据进行可视化分析】

利用二手车数据进行可视化分析 查看原始数据去除重复数据需求分析1.统计全国总共有多少量二手车&#xff0c;用KPI图进行展示2.统计安徽总共有多少量二手车&#xff0c;用KPI图进行展示3.统计合肥总共有多少量二手车&#xff0c;用KPI图进行展示4.取最贵的10辆二手车信息&#…

web,Apache简述

一.HTTP请求访问的完整过程 1.建立连接 2.接收请求 3.处理请求 4.访问资源 服务器获取请求报文中请求的资源web服务器&#xff0c;即存放了web资源的服务器&#xff0c;负责向请求者提供对方请求的静态资源&#xff0c;或动态运行后生成的资源 静态资源&#xff1a;不需要…

C语言 内联函数 + 递归函数

函数分类 内联函数 1&#xff09;内联函数在编译时将函数的代码直接插入到调用它的地方&#xff0c;而不是通过函数调用的方式执行&#xff0c;从而减少了函数调用的开销&#xff0c;提高了代码的执行速度 2&#xff09;使用 inline 关键字来声明 3&#xff09;将函数声明为内联…

小目标检测模型设计的一点思考

1. 小目标的特性 目标之间的交叠概率比较低&#xff0c;即使有交叠&#xff0c;其IoU多数情况下也是比较小的 AI-TOD Tiny Person Dateset 小目标自身的纹理显著度有强弱区别&#xff0c;但是总体来说纹理特征都较弱&#xff0c;很多时候需要借助一定的图像上下文来帮助确认 …

Java解决岛屿周长问题

Java解决岛屿周长问题 01 题目 给定一个 row x col 的二维网格地图 grid &#xff0c;其中&#xff1a;grid[i][j] 1 表示陆地&#xff0c; grid[i][j] 0 表示水域。 网格中的格子 水平和垂直 方向相连&#xff08;对角线方向不相连&#xff09;。整个网格被水完全包围&am…

ssm校园论坛管理系统项目分享

校园论坛管理系统是基于java编程语言&#xff0c;mysql数据库&#xff0c;ssm框架和idea工具开发&#xff0c;本系统主要分为学生用户&#xff0c;管理员两个角色&#xff0c;其中用户可以注册登陆系统&#xff0c;在线发帖&#xff0c;查看栏目帖子&#xff0c;回复帖子&#…

某音上很火的圣诞树分享

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 效果截图&#xff08;这里不给动态了&#xff0c;某音到处都是了&#xff09;&#xff1a; 源代码&#xff1a; <script src"…

Spring Boot 3 集成 MyBatis详解

MyBatis是一款开源的持久层框架&#xff0c;它极大地简化了与数据库的交互流程。与类似Hibernate的ORM框架不同&#xff0c;MyBatis更具灵活性&#xff0c;允许开发者直接使用SQL语句与数据库进行交互。Spring Boot和MyBatis分别是两个功能强大的框架&#xff0c;它们的协同使用…

Linux shell编程学习笔记34:eval 命令

0 前言 在JavaScript语言中&#xff0c;有一个很特别的函数eval&#xff0c;eval函数可以将字符串当做 JavaScript 代码执行&#xff0c;返回表达式或值。 在Linux Shell 中也提供了内建命令eval&#xff0c;它是否具有JavaScript语言中eval函数的功能呢&#xff1f; 1 eval命…

GPIO的使用--USART串口通信--传感器控制数据

目录 一、串口通信 1、概念 2、原理图 3、使用步骤 &#xff08;1&#xff09;寻找串口位置 &#xff08;2&#xff09;确定引脚编号 &#xff08;3&#xff09;编写代码 4、实验结果 实验代码 main.c usart.c usart.h 一、串口通信 1、概念 串行接口是一种可以将…

DiffiT

本文首发于AIWalker&#xff0c;欢迎关注。 https://arxiv.org/abs/2312.02139 https://github.com/NVlabs/DiffiT 扩散模型以其强大的表达能力和高样本质量在许多领域得到了新的应用。对于样本生成&#xff0c;这些模型依赖于通过迭代去噪生成图像的去噪神经网络。然而&#x…

SAP UI5 walkthrough step8 Translatable Texts

在这个章节&#xff0c;我们会将一些文本常量独立出一个资源文件 这样的话&#xff0c;可以方便这些文本常量被翻译成任意的语言 这种国际化的操作&#xff0c;我们一般命名为i18n 新建一个文件i18n.properties webapp/i18n/i18n.properties (New) showHelloButtonTextSay …

vue3项目实现文档 JSON 格式和 Excel 表格的在线预览,(智能搜索,未验证)

若要实现文档 JSON 格式和 Excel 表格的在线预览&#xff0c;你可以使用第三方库来实现。对于文档 JSON 格式&#xff0c;你可以使用 vue-json-pretty 库来展示美观的 JSON 数据&#xff1b;对于 Excel 表格&#xff0c;你可以使用 vue-excel-viewer 库来完成在线预览。下面是一…