コード例 #1
0
        private void UpdateInformation(object sender, ElapsedEventArgs e)
        {
            foreach (string hostname in data.Keys.ToArray())
            {
                if (toRemove.Contains(hostname.ToUpper()))
                {
                    data.Remove(hostname.ToUpper());
                    toRemove.Remove(hostname.ToUpper());
                    continue;
                }

                BatteryInfoRequester requester = new BatteryInfoRequester(hostname.ToUpper());
                lock (this.data)
                {
                    Reset(hostname.ToUpper());
                    requester.Start();

                    while (!requester.IsDone)
                    {
                        Thread.Sleep(10);
                    }

                    requester.Stop();
                }

                listeners.Where(x => x.Key == hostname.ToUpper()).Select(y => y.Value).FirstOrDefault()?.ForEach(f => f.PushInformation());
            }
        }
コード例 #2
0
        private void button2_Click(object sender, EventArgs e)
        {
            if (requester != null && !requester.IsDone)
            {
                requester.Stop();
            }

            this.Close();
        }