Esempio n. 1
0
        public void WaitForPending()
        {
            bool flag1 = false;
            bool flag2 = false;

            using (ExecutorService service = new ExecutorService())
            {
                service.Accept(() => { Thread.Sleep(TimeSpan.FromSeconds(1)); flag1 = true; });
                service.Accept(() => { Thread.Sleep(TimeSpan.FromSeconds(1)); flag2 = true; });
            }

            Assert.IsTrue(flag1);
            Assert.IsTrue(flag2);
        }
Esempio n. 2
0
        public Manager()
        {
            setupService  = new ExecutorService();
            setupFinished = false;

            var initial_sensor_value = 0.0d;
            var initial_sensor_count = 50;

            CpuSamples = new double[initial_sensor_count];
            CpuSamples = Enumerable.Repeat(initial_sensor_value, initial_sensor_count).ToArray();

            GpuSamples = new double[initial_sensor_count];
            GpuSamples = Enumerable.Repeat(initial_sensor_value, initial_sensor_count).ToArray();

            RamSamples = new double[initial_sensor_count];
            RamSamples = Enumerable.Repeat(initial_sensor_value, initial_sensor_count).ToArray();

            setupService.Accept(() =>
            {
                computer = new Computer
                {
                    CPUEnabled = true,
                    GPUEnabled = true,
                    RAMEnabled = true,
                };

                computer.Open();

                cpuCollector = new CpuCollector(computer);
                gpuCollector = new GpuCollector(computer);
                ramCollector = new RamCollector(computer);

                setupFinished = true;
            });
        }
Esempio n. 3
0
        public void DiposedAccess()
        {
            bool flag1 = false;
            bool flag2 = false;

            using (ExecutorService service = new ExecutorService())
            {
                service.Dispose();
                service.Accept(() => { Thread.Sleep(TimeSpan.FromSeconds(1)); flag1 = true; });
                service.Accept(() => { Thread.Sleep(TimeSpan.FromSeconds(1)); flag2 = true; });
                service.Wait();
            }

            Assert.IsFalse(flag1);
            Assert.IsFalse(flag2);
        }
Esempio n. 4
0
        public void TakeScreenShot()
        {
            if (!Directory.Exists(Program.ScreenShotDirectory))
            {
                Directory.CreateDirectory(Program.ScreenShotDirectory);
            }

            Log.i("ScreenShot queued for execution.");

            screenshotService.Accept(() =>
            {
                Log.i("ScreenShot is being taken...");

                using (var picture = Pranas.ScreenshotCapture.TakeScreenshot())
                {
                    string name = Path.Combine(
                        Program.ScreenShotDirectory,
                        string.Format("{0}.png", DateTime.Now.ToFileTime()));

                    picture.Save(name);

                    Log.i("ScreenShot is saved to: {0}", name);
                }
            });
        }
Esempio n. 5
0
 private void QueueUdpPacket(object data)
 {
     udpService?.Accept(() =>
     {
         byte[] packet = Encoding.Default.GetBytes(data.ToJson());
         sensuClientSocket?.Send(packet, packet.Length);
     });
 }
Esempio n. 6
0
        public void ExceptionPropagation()
        {
            Exception ex1 = new Exception();
            Exception ex2 = null;

            using (ExecutorService service = new ExecutorService())
            {
                service.ExceptionReceived += (ex) =>
                {
                    ex2 = ex;
                };

                service.Accept(() =>
                {
                    Thread.Sleep(TimeSpan.FromSeconds(1));
                    throw ex1;
                });
            }

            Assert.IsTrue(ReferenceEquals(ex1, ex2));
        }