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
}
}
------解决方案--------------------
+1