用《斗破苍穹》的视角打开C#多线程开发1(斗帝之路)

Thread.Start()
- 是的,我就是乌坦城那个斗之气三段的落魄少爷,在我捡到那个色眯眯的老爷爷后,斗气终于开始增长了。
- 在各种软磨硬泡下,我终于学会了我人生中的第一个黄阶斗技——吸掌。
using System.Threading;namespace FrameworkDemo
{class Program{// 线程函数static void 吸掌() { // 如果开局大天造化掌是一种什么样的体验?}static void Main(string[] args){Thread 学习吸掌 = new Thread(吸掌); // 创建线程学习吸掌.Start(); // 启动线程}}
}

线程挂起、恢复、休眠、终止
- 也不知道我和药老之间,到底是谁感动了谁,我居然真的选择了那个谁都没有修炼过得黄阶低级功法——《焚决》,这东西打起架来,斗气根本恢复不过来啊,于是药老告诉我他钻研多年,总结出来的应对之策——斗气要省着点用,好吧,能想出这种对策,你还真是个天才。
using System.Threading;namespace FrameworkDemo
{class Program{static Thread 战斗 = new Thread(运用焚决);static void 运用焚决() {while (true) { }}private void 挂起() {战斗.Suspend();}private void 恢复() {战斗.Resume();}private void 休眠() {Thread.Sleep(10 * 1000);}private void 终止() {战斗.Abort();}static void Main(string[] args){战斗.Start();}}
}

线程优先级
- 在本少爷的艰苦奋斗下,终于凝结出了斗之气旋。在我的软磨硬泡下,我终于从药老手中坑出了两套斗技——《八极崩》和《焰分噬浪尺》,于是我陷入了纠结,到底该着重练习哪个呢?
using System.Threading;namespace FrameworkDemo
{class Program{static Thread 学习八极崩;static Thread 学习焰分噬浪尺;static void 八极崩() { }static void 焰分噬浪尺() { }static void Main(string[] args){学习八极崩 = new Thread(八极崩);学习焰分噬浪尺 = new Thread(焰分噬浪尺);// 设置线程优先级// 事实上并不能保证优先级高的一定会先执行,// 只是说CPU负荷较高时,优先级高的会占用更多的运行时间学习八极崩.Priority = ThreadPriority.Highest;学习焰分噬浪尺.Priority = ThreadPriority.Lowest;// 启动线程学习八极崩.Start();学习焰分噬浪尺.Start();}}
}

Lock关键字
- 为了能在三年后,让纳兰嫣然给我为奴为婢,我踏上了苦修之路。
- 在青山镇,我遇上了我永生难忘的那个青衣小女孩——小医仙。
- 众所周知,我是一个专一的男人,我无法在同一时间把感情投入在熏儿和小医仙两个女孩身上,于是我只能给我的心上一把锁,同一时刻,只想念她们中的一个人,下一个时刻,再换一个人思念。我真是个专一的好男人。
using System;
using System.Threading;namespace FrameworkDemo
{class Program{static Object 专一的心 = new Object();static int 思念的次数 = 0;static void 思念熏儿() {while (true){// 锁住公共资源,防止其他线程修改lock (专一的心){思念的次数 += 1;}Console.WriteLine("熏儿,等着我"); Thread.Sleep(1 * 1000);}}static void 思念小医仙() {while (true) {lock (专一的心){思念的次数 += 1;}Console.WriteLine("无论变成什么样子,你永远都是青山镇的那个小医仙");Thread.Sleep(1 * 1000); } }static void Main(string[] args){Thread 熏儿 = new Thread(思念熏儿);Thread 小医仙 = new Thread(思念小医仙);熏儿.Start();小医仙.Start();}}
}

Monitor排它锁
- 药老知晓我对二女的感情后,表示非常愤怒,觉得这样的表现是渣男行为,感情是排他的,所以我应该换一个思路,每个女孩占有我的心时,其他女孩应该在旁边候着,等到我的心被释放后,再把心交给下一个女孩,这才是专一的好男人。
- 我听后,觉得非常有道理,药老不愧是我辈楷模。
using System;
using System.Threading;namespace FrameworkDemo
{class Program{static Object 专一的心 = new Object();static int 思念的次数 = 0;static void 思念熏儿() {while (true){// 在同步对象上获取排它锁// 同一时间只有一个线程可以拿到这把锁Monitor.Enter(专一的心);思念的次数 += 1;Monitor.Exit(专一的心);Console.WriteLine("熏儿,等着我"); Thread.Sleep(1 * 1000);}}static void 思念小医仙() {while (true) {Monitor.Enter(专一的心);思念的次数 += 1;Monitor.Exit(专一的心);Console.WriteLine("无论变成什么样子,你永远都是青山镇的那个小医仙");Thread.Sleep(1 * 1000); } }static void Main(string[] args){Thread 熏儿 = new Thread(思念熏儿);Thread 小医仙 = new Thread(思念小医仙);熏儿.Start();小医仙.Start();}}
}

线程池
- 随着实力的增强,虽然我距离斗师只有一步之遥了,但是我的敌人也越来越多,越来越强大,不知道什么时候,就有可能跳出来给我致命一击。
- 药老提醒我,要时刻关注着有可能出现的敌人,保持对他们的警惕,不要以为他们暂时不在视野中,就忽略了他们的存在。
- 药老告诉了我对所有人保持警觉的方法,却没有细说,他嫌弃我现在的修为太低,说是等我再成长一些,再告诉我其中的门道。
using System;
using System.Threading;namespace FrameworkDemo
{class Program{// 线程函数static void ThreadProc(object state) {Console.WriteLine("XXXXXXXX");}static void Main(string[] args){// 启动线程池ThreadPool.QueueUserWorkItem(new WaitCallback(ThreadProc));Console.ReadLine();}}
}
预知后事如何,且听下回分解。

相关文章:
用《斗破苍穹》的视角打开C#多线程开发1(斗帝之路)
Thread.Start() 是的,我就是乌坦城那个斗之气三段的落魄少爷,在我捡到那个色眯眯的老爷爷后,斗气终于开始增长了。在各种软磨硬泡下,我终于学会了我人生中的第一个黄阶斗技——吸掌。 using System.Threading;namespace Framewo…...
图像处理与计算机视觉--第三章-颜色与纹理分析-6问
图像处理与计算机视觉--第三章-颜色与纹理分析-6问 1.哪些因素决定物体颜色的感知? 对于物体颜色的感知,主要取决于以下三个因素: 1.照射到物体表面光波长的分布 2.物体表面如何反射照射光 3.传感器或者视觉细胞的敏感性 除了上述的三个因素之外,…...
vue重修002
文章目录 版权声明一 指令修饰符1. 什么是指令修饰符?2. 按键修饰符3. v-model修饰符4. 事件修饰符 二 v-bind对样式控制的增强-操作class1. 语法:2. 对象语法3. 数组语法4. 代码练习 三 京东秒杀-tab栏切换导航高亮四 v-bind对有样式控制的增强-操作sty…...
[PowerQuery] PowerAutoMate 刷新PowerBI 数据
通过PowerBI Automate 进行PowerBI 数据刷新之前,需要有Power Automate 授权或者Power Automate 试用账户,可以通过如下的地址进行申请注册。 https://flow.microsoft.com/zh-cn/ 完成Power Automate 登录之后,选中计划的云端流后创建,图为创建计划的云端流的操作步骤。 …...
C语言中各种接口标准
1.POSIX(Portable Operating System Interface,可移植操作系统接口):是一个定义了操作系统接口标准的家族。它旨在提供一致的API(Application Programming Interface,应用程序编程接口)和环境&a…...
vscode常用插件
koroFileHeader: 设置详情, 文件头自动注释 code runner: 支持多语言编译运行 git lens: git 提交可视化查看工具 Markdown配套软件: Markdown All in One: Markdown文档工具集成Markdown PDF: Markdown文档导出为PDFMarkdown Preview Enhanced: 分屏查…...
代码随想录算法训练营day60|84.柱状图中最大的矩形 |完结撒花~
84.柱状图中最大的矩形 力扣题目链接 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 1 < heights.length <10^5 0 < heights[i] < 10^…...
在 android 上使用 adb client
adb tool 分为 adb 和 adbd。 adb 用作 host 使用,包含了client和server,adbd 则作为 device 端,在 android 源码目录下,共用一套源码。但 android 源码下的 adb,不支持把 adb 编译为 android 平台的 adb client。因此…...
竞赛选题 基于深度学习的视频多目标跟踪实现
文章目录 1 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的视频多目标跟踪实现 …...
分布式应用之监控平台zabbix的认识与搭建
一、监控系统的相关知识 1.1 监控系统运用的原因 当我们需要实时关注与其相关的各项指标是否正常,往往存在着很多的服务器、网络设备等硬件资源,如果我们想要能够更加方便的、集中的监控他们,zabix可以实现集中监控管理的应用程序 监控的…...
C语言大佬的必杀技---宏的高级用法
C语言大佬的必杀技—宏的高级用法 目录: 字符串化标记的拼接宏的嵌套替换多条语句防止一个文件被重复包含宏和函数的区别 可能大家在学习的时候用得比较少,但是在一些代码量比较大的时候,这样使用,可以大大的提高代码的可读性,…...
@Retryable和Guava retry
文章目录 一、spring的Retryable1.1 作用:1.2链接:https://www.cnblogs.com/EasonJim/p/7684649.html1.3 坑1.4 Recover补充依赖 二、Guava-retry:使用 一、spring的Retryable 1.1 作用: Retryable注解,被注解的方法…...
conda的安装和使用
参考资料: https://www.bilibili.com/read/cv8956636/?spm_id_from333.999.0.0 https://www.bilibili.com/video/BV1Mv411x775/?spm_id_from333.999.0.0&vd_source98d31d5c9db8c0021988f2c2c25a9620 目录 conda是啥以及作用conda的安装conda的启动conda的配置…...
K8S:pod集群调度及相关操作
文章目录 一.pod集群调度概念1.调度约束( List-Watch组件)2.List-Watch的工作机制(1)List-Watch的工作机制流程(2)List-Watch的工作机制图示 3.调度的过程(1)调度的任务(2)调度选择p…...
阿里云便宜服务器2核2G配置经济型e实例一年182元性能测评
阿里云服务器经济型e实例2核2G配置优惠价格182.04元一年,系统盘ESSD Entry盘20GB起,公网带宽默认按使用流量,也可以选择按固定带宽计费,带宽值从1M到100M可选,阿腾云分享阿里云服务器2核2G优惠价格、详细配置及e系列CP…...
资讯| 工信部拟筹建元宇宙标准化工作组;《权游》作者起诉OpenAI
元宇宙赛道 工信部:优先开展“元宇宙 工业制造”等行业应用标准研制 9月18日,工业和信息化部科技司就《工业和信息化部元宇宙标准化工作组筹建方案(征求意见稿)》(以下简称《方案》)公开征求意见。 工业…...
Win10安装Docker Desktop并运行Tutorial示例
背景 前段时间一个项目需要在开发环境直接使用 Docker ,为了省事便计划在本地安装 Desktop 版的 Docker 。其实安装过程比较简单,可视化安装即可,主要是对安装与初步使用时遇到的问题做个记录。 下载安装 下载地址:https://dow…...
1、靶机——Pinkys-Place v3(1)
文章目录 一、环境二、获取flag11、扫描局域网内存活主机1.1 查看kali的IP地址1.2 扫描存活主机 2、粗略扫描靶机端口(服务)3、寻找ftp服务漏洞4、扫描端口详细信息5、匿名登录ftp 一、环境 攻击机:kali 靶机:Pinkys-Place v3&am…...
【AIGC】Stable Diffusion Prompt 每日一练0916
一、前言 1.1 写在前面 本文是一个系列,有点类似随笔,每天一次更新,重点就Stable Diffusion Prompt进行专项训练,本文是第022篇《Stable Diffusion Prompt 每日一练0916》。上一篇《Stable Diffusion Prompt 每日一练0915》 1.…...
【C语言】指针经典笔试题(上)
C语言的一大重头戏就是指针。 对于指针有一些认识: 1.指针是存放变量的地址,一般说的指针和指针变量是一个概念。 2.地址的单位是字节,大小在不同编译器环境下有所不同,32位机器是4个字节,64位机器是8个字节。 3.数组名…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...
