/// <summary>
 /// constructor
 /// </summary>
 public BusyProcessChecker(int sys_CPU_Max, int prc_CPU_Max, int pid)
 {
     //pid = -1 ならProcessのCPU使用率は評価しない。
     System__CPU_Max = sys_CPU_Max;
     Process_CPU_Max = prc_CPU_Max;
     systemCounter   = new SystemCounter();
     processCounter  = new SystemCounter.ProcessCPUCounter();
     processCounter.Create(pid);
 }
        /// <summary>
        /// Constructor
        /// </summary>
        public SystemIdleMonitor(float thd_cpu, float thd_hdd, float thd_net, int duration_sec)
        {
            //Queue
            int capacity = duration_sec;

            queCpu  = new MonitorQueue(thd_cpu, capacity); //thdがマイナスなら無効状態で作成される。
            queHDD  = new MonitorQueue(thd_hdd, capacity);
            queNet  = new MonitorQueue(thd_net, capacity);
            Counter = new SystemCounter();
            Counter.HDD.SetPrefix(BytePerSec.MiBps);
            Counter.Network.SetPrefix(bitPerSec.Mibps);

            timer = new Timer(new TimerCallback(timer_Tick));
        }