先上全部源码:

 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)。不说了,只有吃过亏才会深刻理解。

随机推荐

  1. Flex3在应用RemoteObject出现问题解决方法

    出现该问题 <mx:RemoteObject id="robj" destination="hello" endpoint="http://lo ...

  2. Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python

    Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...

  3. 详细分析 javascript 的内存分配

    JavaScript语言是一门优秀的脚本语言.其中包含脚本语言的灵活性外还拥有许多高级语言的特性.例如充许构建和实例化一个对象,垃圾回 收机制(GC:Garbage Collecation).通常我们 ...

  4. JavaBean的boolean isXXX反序列化问题

    JavaBean规范中规定boolean的getter/setter 为isXXX/setXXX,包装类Boolean的getter/setter 为getXXX/setXXX,其中XXX为变量名(I ...

  5. java參数传递机制浅析

    欢迎转载,转载请声明出处! ----------------------------------------- 前言: java语言中,參数的传递仅仅有一种机制.那就是值传递. 举例: 以下将通过几个 ...

  6. 利用NSInvocation对方法进行抽象,实现对方法的加锁

    我们在实际开发中须要对离散的方式加锁实现线程安全,当然我们有多种实现方式,这仅仅是当中一种,使用起来比較方便 + (id)performSelectorWithTarget:(id)target se ...

  7. OpenCV LDA(Linnear Discriminant analysis)类的使用---OpenCV LDA演示样例

    1.OpenCV中LDA类的声明 //contrib.hpp class CV_EXPORTS LDA { public: // Initializes a LDA with num_componen ...

  8. 再回首,Java温故知新(二):Java基本数据类型

    Java作为一种强类型语言,意味着每一个变量都会有特定的类型,Java共有8种基本类型,其中有4种整型(byte.short.int.long).两种浮点型(float.double).1种字符型(c ...

  9. NYOJ2括号配对问题

    括号配对是最基本的栈的问题,它是栈入门的经典题目,思路是,如果是左括号直接进栈,如果是右括号,这时就要比较栈顶的元素与他是否匹配,如果匹配则出栈,否则进栈,下面是代码的实现: #include < ...

  10. Oracle处理特殊字符

    检查数据库级的参数设置 select * from nls_database_parameters;