C#多线程简单易用原代码

本文通过一个C#示例展示了如何创建和操作线程,包括启动、挂起线程等基本操作,并演示了线程状态异常捕获的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System; using System.Threading; class CRunThread { static void Main() { Thread.CurrentThread.Name = "===================== Main Thread =================="; CRunThread.PrintThreadInfo(); OperThreads(); } public static void PrintThreadInfo() { //Thread.CurrentThread.Name = "The Main Thread" + rdm.Next();//当前线程的名称 Console.WriteLine(Thread.CurrentThread.Name + "\tStatus:" + Thread.CurrentThread.ThreadState); } public static void OperThreads() { Console.WriteLine("Thread Start / Stop / Join Sample"); A a = new A("hello, andylin:)"); ThreadStart srtTrd = new ThreadStart(a.Run); Thread trd = new Thread(srtTrd); trd.Start(); Thread.Sleep(10); trd.Suspend(); //trd.Abort(); //trd.Join(); Console.WriteLine("\n ======== A.Run has finished =========="); try { Console.WriteLine("Try to restart the A.Run..."); trd.Start(); } catch (ThreadStateException e) { Console.WriteLine(e.ToString()); } catch (System.Exception e) { Console.WriteLine(e.ToString()); } Console.WriteLine("============ end of operator thread =================="); } } class A { private string m_strVal; public A(string str) { m_strVal = str; } public void Run() { Thread.CurrentThread.Name = "The A Thread";//当前线程的名称 while (true) { CRunThread.PrintThreadInfo(); Console.WriteLine("strValue:" + m_strVal); Console.WriteLine("A.Run is runing in its own thread..."); } } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值