博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《C#多线程编程实战(原书第2版)》——1.3 暂停线程
阅读量:6328 次
发布时间:2019-06-22

本文共 674 字,大约阅读时间需要 2 分钟。

本节书摘来自华章出版社《C#多线程编程实战(原书第2版)》一书中的第1章,第1.3节,作者(美)易格恩·阿格佛温(Eugene Agafonov),黄博文 黄辉兰 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 暂停线程

本节将展示如何让一个线程等待一段时间而不用消耗操作系统资源。

1.3.1 准备工作

为了学习本节,你需要安装Visual Studio 2015。除此之外无需其他准备。本节的源代码放置在BookSamplesChapter1Recipe2目录中。

1.3.2 实现方式

请执行以下步骤来了解如何暂停线程而不消耗操作系统资源:

1.启动Visual Studio 2015。创建一个新的C# 控制台应用程序项目。

2.在Program.cs文件中加入以下using指令:

29f7d8a2aec59ef3a2c7b149e6b581d52b3febc7

3.在Main方法下面加入以下代码片段:

cdd1e4c2e7414092718baacdad78d882cc10e0c8

4.在Main方法中加入以下代码片段:

eb2cf63f4aafae081f51fd9235aaab91910d8979

5.运行程序。

1.3.3 工作原理

当程序运行时,会创建一个线程,该线程会执行PrintNumbersWithDelay方法中的代码。然后会立即执行PrintNumbers方法。关键之处在于在PrintNumbersWithDelay方法中加入了Thread.Sleep方法调用。这将导致线程执行该代码时,在打印任何数字之前会等待指定的时间(本例中是2秒钟)。当线程处于休眠状态时,它会占用尽可能少的CPU时间。结果我们会发现通常后运行的PrintNumbers方法中的代码会比独立线程中的PrintNumbersWithDelay方法中的代码先执行。

转载地址:http://cbzoa.baihongyu.com/

你可能感兴趣的文章
C机顶盒开发实战常用初始化类型:数组、结构、指针
查看>>
Jquery闪烁提示特效
查看>>
最佳6款用于移动网站开发的 jQuery 图片滑块插件
查看>>
C++ String
查看>>
获取系统托盘图标的坐标及文本
查看>>
log4j Test
查看>>
HDU 1255 覆盖的面积(矩形面积交)
查看>>
Combinations
查看>>
SQL数据库无法附加,提示 MDF" 已压缩,但未驻留在只读数据库或文件组中。必须将此文件解压缩。...
查看>>
第二十一章流 3用cin输入
查看>>
在workflow中,无法为实例 ID“...”传递接口类型“...”上的事件“...” 问题的解决方法。...
查看>>
获取SQL数据库中的数据库名、所有表名、所有字段名、列描述
查看>>
Orchard 视频资料
查看>>
简述:预处理、编译、汇编、链接
查看>>
调试网页PAIP HTML的调试与分析工具
查看>>
路径工程OpenCV依赖文件路径自动添加方法
查看>>
玩转SSRS第七篇---报表订阅
查看>>
WinCE API
查看>>
.NET 4.5.1 预览版新特性
查看>>
POJ 3280 Cheapest Palindrome(DP 回文变形)
查看>>