收录日期:2020/12/05 20:29:07 时间:2016/06/10 05:25:50 标签:C#
我需要实现定时执行某项操作的功能,因为这个操作很费时,所以我想使用线程来完成,可是在测试出现很奇怪的问题,每次到指定时间就会循环执行好多次。
private void timeUpdate_Tick(object sender, System.EventArgs e)
{
       DateTime t = DateTime.Now ;
       string s   = t.ToLongTimeString ();
       this.label1.Text = s;
       string fistTime = opIni.IniReadValue("updatefilepath","StarTime");
      
       if(DateTime.Now.ToString("HH:mm:ss")== fistTime )
        {
    //执行更新程序
              Thread threadTest = new Thread(new ThreadStart(test));
     threadTest.IsBackground = true;
     threadTest.Start();
     // this.test();
}

}
private void test()
{
//这里执行了一些连接数据库查找数据的操作

}
//这个是加载时的Timer设置
private void frmAutoUpdate_Load(object sender, System.EventArgs e)
{
this.timeUpdate .Tick += new   System.EventHandler(this.timeUpdate_Tick );
timeUpdate.Interval=1000;
timeUpdate.Start();
}
如果不用线程序,直接到时间执行test()就会成功。如果用线程就会重复执行,而且在填充DataSet时间提示找不到表0.
各位高手指点一下小弟了。
不知道你用的是什么timer ,
.net 支持有3种timer
常用的有
forms.timer
thread.timer

timer不同,活动方式也不同

==================================
小小姑娘
清早起床
提着裤子上茅房
茅房有人,不能再等
只好拉在裤子上..................
==================================
我就是直接在工具栏里拖了一Timer来用的。
你debug 一下
我记得,重设timer 间隔后可能也会激发timer 事件

==================================
小小姑娘
清早起床
提着裤子上茅房
茅房有人,不能再等
只好拉在裤子上..................
==================================
呵呵 .还真没有注意到.net2.0里还有三个timer,查了一下还真存在,不过在.net里基本上没用timer了,需要定时任务一般都线程处理,只在VB6.0里经常用timer
重复执行?
可能是这句有问题吧
if(DateTime.Now.ToString("HH:mm:ss")== fistTime )

你调一下
这一句是没有错误的,因为如果不用线程序,里面的执行就会很正常的。那个fistTime是用来获取我在INI中设置的时间的。
定时任务在线程里处理,无非也就是sleep 
时间不够准确,这是经验
所以有基于线程的timer

==================================
小小姑娘
清早起床
提着裤子上茅房
茅房有人,不能再等
只好拉在裤子上..................
==================================
在线程threadTest.Start()后面用Thread.sleep(2000)
,否则你那样运行会多次判断DateTime.Now.ToString("HH:mm:ss")== fistTime

这样的sql语句如何写?在线等,非常感谢 新手要制作一个小型购物车系统,求助大侠们。。。。 关于JMF的问题,求大神帮帮忙…… 鼠标 气泡的问题,.. 删除除重复的数据,并保留一行 软件开发,网络应用(只是做网络方面的),嵌入式开发哪个方向好啊? 哪位老师能解格式文件 槑党(‧\"\"‧) 小飞(29/11 2)~~~~ ado连接access数据库,unknown error 0x800A0E7A 高手进!我都无语了。。。。 槑党(‧\"\"‧)一缕风(29/11 1)~~~ 怎样打开页面让GridVIew就处于编辑状态?请前辈指导,先感谢了! 求代码以及详细功能说明 Failed initailizing heap region android左右滑动查看图片 分配空间 正则求助 SQL一条语句统计记录总数及各状态数 创建新数据源没有Microsoft Access Driver.mdb选项 【耶稣有么?外星人有么?神佛有么?具体长什么样子?】台湾大学校长,双盲实验证明“佛、神、灵界的确存在” 各位大侠,小弟刚学liunx ,遇到了几个问题,烦请各位帮忙看看能否解决,谢谢了。 非模态对话框消息问题 关于CEdit类指针问题 python连接access出现这个错误,高手指教~~! 上传文件的问题 unicode字符12539输出不了求助 top 等待事件为 gc current block 2-way,求调优建议 帮忙推荐一下学习Thumb2汇编指令的书籍或资料 多线程通信 gc current block 2-way 冲到了等待事件 TOP1,高人过来瞄一眼,谢谢