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!
"
);
}
查看全文
相关阅读:
关于docker日常操作(一)
html基础
Java6开发WebService进阶
Java6开发WebService入门
jsp session
jsp中的request
java文件上传下载
javaweb文件上传下载
struts2文件上传下载
springMVC文件上传下载
原文地址:https://www.cnblogs.com/ding0910/p/559383.html
最新文章
ascii 转换为 utf-8
常见的 http 状态码
python二维数组
File_attack记录
关于配置nginx django uwsgi的几点说明
Python 修改global 变量
Mysql What is "order by 1"
Google Guava 学习记录《4》Immutable Set
Google Guava 学习记录《Three》 Ordering
python中两个参数的意义 *args **kwargs
热门文章
一些大数据工具,名词的记录
RPM包制作
文件推送
数据统计的工作流程
神策数据上报操作
进入docker的工作流程
mysql的查找语句
php_storm快捷键
mysql基本操作语句
关于docker的日常操作(二)
Copyright © 2011-2022 走看看