A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 草缘 中级黑马   /  2014-10-13 14:10  /  1214 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

最近在写关于多线程执行定时任务的代码,先贴代码
  1. public class Program
  2.     {
  3.       
  4.         static void Main(string[] args)
  5.         {
  6.             
  7.             
  8.             string date = "2014/10/12/21/56";
  9.             Ex ex = new Ex();
  10.             ex.Start(date);
  11.             //UI线程至此结束了,该进程下的其他后台线程(可设置其为前台线程,则不会结束)都会结束
  12.         }
  13.         
  14.     }
  15.     public class Ex
  16.     {
  17.         Thread checkTimeThread = null;//检查时间的线程,应该创建一次就有一个新的检查时间的线程
  18.         public void Start(object date)
  19.         {
  20.             checkTimeThread = new Thread(Excute);      
  21.             checkTimeThread.Start(date);            
  22.         }
  23.         
  24.         bool isExcute = true;
  25.         public void Excute(object oTime)
  26.         {
  27.             try
  28.             {
  29.                 string today = null;
  30.                 while (isExcute)
  31.                 {
  32.                     today = DateTime.Now.ToString("yyyy/MM/dd/HH/mm"); //2014/10/11/21/49                              
  33.                     //如果时间处在选定的时间点,将会执行任务
  34.                     if (today == oTime.ToString())
  35.                     //执行获取短息回复任务,并返回回复内容
  36.                     {Console.WriteLine("i have done!");break; }
  37.                     //每隔1s执行一次任务
  38.                     Thread.Sleep(1000);
  39.                 }      
  40.             }
  41.             catch (Exception)
  42.             {
  43.                 isExcute = false;
  44.                 checkTimeThread.Abort();
  45.                
  46.             }
  47.             isExcute = false;
  48.             if (checkTimeThread.IsAlive)
  49.                 checkTimeThread.Abort();


  50.         }
  51.     }
复制代码
这段代码每次执行一个定时任务是可行的,但是我的目的是能多创建几个定时任务,感觉有点难度了

3 个回复

倒序浏览
{:2_30:}{:2_30:}
回复 使用道具 举报
{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}
回复 使用道具 举报
封装,重复调用
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马