测试Windows服务停止、启动对全局变量的影响

Windows服务中有一全局变量,Windows服务停止、启动对全局变量会有什么影响?重新初始化?还是仍保持原先的值?做个测试:

Windows服务代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
using System.IO;
using System.Threading;

namespace WindowsService1
{
    partial class TestWS : ServiceBase
    {
        private bool status = true;//全局变量

        public TestWS()
        {
            InitializeComponent();
        }

        protected override void OnStart(string[] args)
        {
            Log("启动服务");

            //定时器
            System.Timers.Timer timer1 = new System.Timers.Timer();
            timer1.Interval = 10 * 1000;
            timer1.Elapsed += new System.Timers.ElapsedEventHandler(Done);
            timer1.AutoReset = true;
            timer1.Enabled = true;
        }

        protected override void OnStop()
        {
            Log("停止服务");
        }

        /// <summary>
        /// 定时任务
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Done(object sender, EventArgs e)
        {

            Log("TODO... status:" + status.ToString());

            status = false;
        }

        protected void Log(string msg)
        {
            File.AppendAllText(@"c:\ws.log", string.Format("{0}:{1}\r\n",DateTime.Now.ToString("HH:mm:ss"),msg));
        }
    }
}

说明:Windows服务中声明了一全局变量status,初始值为true,定时器启动后将status值更改为false,测试停止、启动服务后,status值的变化情况。

测试日志:
引用内容 引用内容
17:05:11:启动服务
17:05:21:TODO... status:True
17:05:31:TODO... status:False
17:05:41:TODO... status:False
17:05:51:TODO... status:False
17:06:01:TODO... status:False
17:06:11:TODO... status:False
17:06:20:停止服务
17:07:56:启动服务
17:08:06:TODO... status:True
17:08:16:TODO... status:False
17:08:26:TODO... status:False
17:08:36:TODO... status:False
17:08:44:停止服务

可见,停止再启动Windows服务后,status全局变量重新初始化为true。

上一篇: C#获取应用程序路径几种方法
下一篇: C#获取Unix时间戳
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
最新日志:
评论: 0 | 引用: 0 | 查看次数: 4825
发表评论
登录后再发表评论!