1、输出

1
2
3
4
5
Console.WriteLine("输出"); //控制台输出

Console.WriteLine(格式字符串(含替代标记),替换值0,替换值1,替换值2,...);
Console.WriteLine("两个整数示例是 {0} 和 {1}",3,6);
//输出结果为:两个整数示例是 3 和 6

2、计时

1
2
3
4
5
DateTime beforeDT = System.DateTime.Now; //获取开始时间
程序段
DateTime afterDT = System.DateTime.Now; //获取结束时间
TimeSpan ts = afterDT.Subtract(beforeDT); //结束时间减去开始时间
Console.WriteLine("DateTime costed for Shuffle function is: {0}ms", ts.TotalMilliseconds); //控制台输出时间

3、多线程

3.1 创建并启动线程

1
2
Thread socketLine = new Thread(Recieve_Message); //创建线程 线程执行Recieve_Message这个函数
socketLine.Start();//启动线程

3.2 线程信号量

1
2
3
4
5
6
private readonly ManualResetEvent mresend = new ManualResetEvent(false); //创建一个信号量,初始状态为False

mresend.WaitOne(); //等待信号,如果信号是False则阻塞
mresend.ReleaseMute();//释放资源
mresend.Set(); //将信号设为True,允许阻塞的经常恢复
mresend.Reset(); //将信号设为Fasle

4、定时

4.1 定时器控件

定义在System.Windows.Forms里,占用主线程执行定时器功能

1
2
3
//在From中添加控件,然后在timer_Tick方法中,实现定时器的功能
timer.Interval = 1500; //定时器时间,单位为ms
timer.Enabled = true; //是否执行timer_Tick方法

4.2 定时器类

定义在System.Timers.Timer类里,不占用主线程。

1
2
3
4
5
6
7
//实例化Timer类,设置间隔时间为1000毫秒; 
System.Timers.Timer t = new System.Timers.Timer(1000);

//到达时间的时候执行事件;
t.Elapsed += new System.Timers.ElapsedEventHandler(theout);
t.AutoReset = true;//设置是执行一次(false)还是一直执行(true);
t.Enabled = true;//是否执行System.Timers.Timer.Elapsed事件;

5、文件

1
2
3
4
5
6
7
string path = System.AppDomain.CurrentDomain.BaseDirectory + "parameter.txt"; //文件路径
File.Exists(@path) //文件是否存在
File.Create(@path) //创建文件
FileStream fs = new FileStream(path, FileMode.Open); //创建文件流
fs.Seek(x, SeekOrigin.Begin); //设置文件流的起始位置为x
fs.Write(data, 0, data.Length); //文件写入
fs.Close(); //文件流关闭

6、绘图

1
2
3
4
5
private Graphics g = this.panel1.CreateGraphics(); //创建绘画类
Pen p1 = new Pen(Color.Yellow, 0.2f); //创建画笔,设置颜色大小
g.Clear(Color.White); //清空成白色
g.DrawLine(p1, new PointF(x1, y2), new PointF(x2, y2)); //用p1画笔画一条线段从(x1,y1)到(x2,y2)
g.DrawEllipse(p1, x, y, w, h); //用p1画笔画一个椭圆,椭圆边框左上角坐标为(x,y),椭圆宽度为w,高度为h