zoukankan
html css js c++ java
C#中Timer类与线程
线程Thread
//
线程
using
System;
using
System.Threading;
namespace
TaskDemo
{
public
class
MyTask
{
public
Thread m_thread;
string
m_name;
public
MyTask(
string
name)
{
m_name
=
name;
m_thread
=
new
Thread(
new
ThreadStart(Worker));
}
private
void
Worker()
{
Console.WriteLine(
"
Hello,
"
);
Thread.Sleep(
1500
);
Console.WriteLine(m_name);
}
}
class
TaskDemo1
{
static
void
Main(
string
[] args)
{
MyTask task1
=
new
MyTask(
"
Bill
"
);
MyTask task2
=
new
MyTask(
"
Steve
"
);
task1.m_thread.Start();
task2.m_thread.Start();
}
}
}
Timer类
关于C#中timer类 在C#里关于定时器类就有3个
1
.定义在System.Windows.Forms里
2
.定义在System.Threading.Timer类里
/?
"
3
.定义在System.Timers.Timer类里
System.Windows.Forms.Timer是应用于WinForm中的,它是通过Windows消息机制实现的,类似于VB或Delphi中的Timer控件,内部使用API SetTimer实现的。它的主要缺点是计时不精确,而且必须有消息循环,Console Application(控制台应用程序)无法使用。
System.Timers.Timer和System.Threading.Timer非常类似,它们是通过.NET Thread Pool实现的,轻量,计时精确,对应用程序、消息没有特别的要求。System.Timers.Timer还可以应用于WinForm,完全取代上面的Timer控件。它们的缺点是不支持直接的拖放,需要手工编码。
例:
使用System.Timers.Timer类
System.Timers.Timer t
=
new
System.Timers.Timer(
10000
);
//
实例化Timer类,设置间隔时间为10000毫秒;
t.Elapsed
+=
new
System.Timers.ElapsedEventHandler(theout);
//
到达时间的时候执行事件;
t.AutoReset
=
true
;
//
设置是执行一次(false)还是一直执行(true);
t.Enabled
=
true
;
//
是否执行System.Timers.Timer.Elapsed事件;
public
void
theout(
object
source, System.Timers.ElapsedEventArgs e)
{
MessageBox.Show(
"
OK!
"
);
}
查看全文
相关阅读:
数据库中生成UUID的方式
db2如果修改主机名之后
linux修改主机名
db2动态查看备份进度
oracle-DG
linux环境变量和对应文件的生效顺序
数据泵与传统exp/imp对比
oracle之ogg部署(RAC到单机)
oracle之ogg部署(单机到单机)
达梦 (实时主备+数据守护)测试
原文地址:https://www.cnblogs.com/ding0910/p/559383.html
最新文章
硬盘分区
fork、父进程和子进程
C语言怎么实现可变参数
C语言中函数的返回值
键盘--扫描码--ASCII码--显示器上的字符
coffeine的基于内存缓存的使用
redis的基本使用方法
mysql 批量查询
springboot 简单实用定时任务
springboot 项目==基于websocket的服务端推送消息。
热门文章
Springboot 请求参数通知RequestBodyAdvice和响应通知ResponseBodyAdvice做日志的打印
mysql 存储过程的使用;
将jar包安装到本地maven仓库
mysql相关操作
使用mysql命令窗口查看中文数据乱码的解决办法
Python环境构建
Linux文本处理工具--less
Linux正则表达式
堆排序之Python实现
sudo的使用
Copyright © 2011-2022 走看看