Sleep的问题
先上全部源码:
using System;
using System.Threading;
namespace MoveServices
{
public static class MoveWorker
{
private static Random random = new Random();
public static void DoWork()
{
while (true)
{
, );
Console.WriteLine("{0}\ttime={1}", DateTime.Now.ToString("HH:mm:ss.fff"), time);
Thread.Sleep(time > - ? time * : time);
}
}
}
}
using System;
using System.Threading;
namespace MoveServices
{
class Program
{
static void Main(string[] args)
{
while (true)
{
try
{
MoveWorker.DoWork();
}
catch (Exception exception)
{
Console.WriteLine("{0}\texception:{1}", DateTime.Now.ToString("HH:mm:ss.fff"), exception.Message);
}
finally
{
Thread.Sleep();
}
}
}
}
}
当随机数time=-1的时候,程序会无限暂停,因为Thread.Sleep(-1)相当于sleep(UINT_MAX)。不说了,只有吃过亏才会深刻理解。
随机推荐
- Struts2获取request三种方法
Struts2获取request三种方法 struts2里面有三种方法可以获取request,最好使用ServletRequestAware接口通过IOC机制注入Request对象. 在Actio ...
- ARES
ARES规划是恒生公用技术平台规划,以敏捷Agility.重用性Reused.扩展性Extend.简单性Simple为核心特性与价值取向,规划涉及ARES Server运行支撑平台.ARES Stud ...
- angularJS $watch $digest $apply
一 简介AngularJS提供了一个非常酷的特性叫做双向数据绑定(Two-way Data Binding),这个特性大大简化了我们的代码编写方式.数据绑定意味着当View中有任何数据发生了变化,那么 ...
- ECLIPSE TOMCAT CONFIG JSTL
{LJ?Dragon}[标题]Eclipse 配置 JSTL标签库 {LJ?Dragon}[Diary]2017年,愉快的开始:当和他们离别时,感觉失去了整个世界......... 1.JSTL简 ...
- HttpURLConnection学习
转自:http://mobile.51cto.com/abased-448264.htm 最常用的Http请求无非是get和post,get请求可以获取静态页面,也可以把参数放在URL字串后面,传递给 ...
- c# MongoDB插入和批量插入,插入原理
在开发之前,选择MongoDb驱动是件很重要的事情.如果选择不好,在后期的开发的是件很费力的事情,因为我就遇到这样的问题.MongoDb驱动有几种比较流行驱动,官方驱动和samus是两种使用比较多的. ...
- android编程中setLayoutParams方法设置
第一篇 private LinearLayout generateHeadOfControl() { LinearLayout LayoutHead = createLayout(LinearLayo ...
- [连载]JavaScript讲义(03)--- JavaScript面向对象编程
- Project Euler:Problem 55 Lychrel numbers
If we take 47, reverse and add, 47 + 74 = 121, which is palindromic. Not all numbers produce palindr ...
- Zlib文件压缩和解压
开源代码:http://www.zlib.net/zlib使用手册:http://www.zlib.net/manual.htmlzlib wince版:http://www.tenik.co.jp/ ...