首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

Windows服务中应用线程

2013-01-07 
Windows服务中使用线程//Windows服务后台代码protected override void OnStart(string[] args){// TODO:

Windows服务中使用线程
  //Windows服务后台代码     
    protected override void OnStart(string[] args)
        {
            // TODO: 在此处添加代码以启动服务。
            Transfer.Start();
            
        }
//Transfer类中start函数
        public static void Start()
        {         
            thread1= new Thread(new ThreadStart(run_transfer));          
            thread1.Start();
        }
Windows服务直接在start中调用方法,没有使用Timer。
每次run_transfer好像只能运行一次,请教是什么问题?
[解决办法]
建议在线程内建立循环来调用,并提供公共标志位来结束线程
类似
public bool isWorking=true;

private void run_transfer(){
    while(isWorking){
        //ToDo
    }
}
[解决办法]

引用:
建议在线程内建立循环来调用,并提供公共标志位来结束线程
类似
public bool isWorking=true;

private void run_transfer(){
    while(isWorking){
        //ToDo
    }
}

+1

热点排行