C#编程之C#基础(六)
时间:2019-11-18
本文章向大家介绍C#编程之C#基础(六),主要包括C#编程之C#基础(六)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
这里我们讲一下C#编程之线程使用: 线程是程序中独立的指令流。
对于C#和.NET基类为开发多线程应用程序所提供的的支持。线程的使用常用是通过Thread和ThreadPool类来创建与使用。
利用Thread处理线程:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading; 6 7 namespace ThreadPool 8 { 9 class Program 10 { 11 static int interval; 12 static void Main(string[] args) 13 { 14 Console.Write("interval to display results at?> "); 15 interval = int.Parse(Console.ReadLine()); 16 17 Thread thisThread = Thread.CurrentThread; 18 thisThread.Name = "CurrentThread"; 19 ThreadStart workerStart = new ThreadStart(StartMethod); 20 21 Thread workdThread = new Thread(workerStart); 22 workdThread.Name = "workThread"; 23 workdThread.Start(); 24 DispalyNumbers(); 25 Console.WriteLine("Main Thread finished."); 26 Console.ReadLine(); 27 } 28 static void StartMethod() 29 { 30 DispalyNumbers(); 31 Console.WriteLine("worker thread finished."); 32 } 33 static void DispalyNumbers() 34 { 35 Thread thisThread = Thread.CurrentThread; 36 string name = thisThread.Name; 37 Console.WriteLine(name + ": current culture= " + thisThread.CurrentCulture); 38 for (int i = 1; i < 8 * interval; i++) 39 { 40 if(i%interval==0) 41 { 42 Console.WriteLine(name + ":count has reached " + i); 43 } 44 } 45 } 46 } 47 }
运行输入数字:
如下利用ThreadPool类创建线程:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading; 6 7 namespace ThreadDemo 8 { 9 class Program 10 { 11 static int interval; 12 static void Main(string[] args) 13 { 14 Console.Write("interval to display results at?>"); 15 interval = int.Parse(Console.ReadLine()); 16 ThreadPool.QueueUserWorkItem(new WaitCallback(StartMethod)); 17 Thread.Sleep(100); 18 ThreadPool.QueueUserWorkItem(new WaitCallback(StartMethod)); 19 Console.ReadLine(); 20 } 21 static void StartMethod(object stateInfo) 22 { 23 //todo your code here 24 DisplayNumbers("Thread " + DateTime.Now.Millisecond.ToString()); 25 Console.WriteLine("Thread Finished."); 26 } 27 static void DisplayNumbers(string GivenThreadName) 28 { 29 Console.WriteLine("Start thread: " + GivenThreadName); 30 for(int i=1;i<8*interval;i++) 31 { 32 Console.WriteLine("Count has reached: " + i); 33 Thread.Sleep(1000); 34 } 35 } 36 } 37 }
原文地址:https://www.cnblogs.com/lumao1122-Milolu/p/11883006.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法