【多线程-Abort()方法强制退出线程】

线程的退出比较特殊,使用的是Abort()方法进行强制退出,会抛出一个线程异常来结束该线程的执行任务。

class Program
    {
        private static Thread subthread ;
        private static string name ="";
        static void Main(string[] args)
        {
            subthread = new Thread(new ThreadStart(GetShow));
            subthread.IsBackground = false;
            subthread.Name = "子线程";
            subthread.Start();   //开启线程
            Console.WriteLine("{0}后台线程", Thread.CurrentThread.Name+Thread.CurrentThread.IsBackground+",结束");
            Console.WriteLine("主线程结束");
        }
        static void GetShow()
        {
            Console.WriteLine("输入姓名:");
            name = Console.ReadLine();
            try
            {
                subthread.Abort();//结束线程
            }
            catch (Exception ex)
            {
                Console.WriteLine("异常:>> "+ex.Message);
            }
            Console.WriteLine("执行");
        }
    }

在上面输入姓名后,结束subThread线程,使用Abort()方法,最后抛出了一个线程异常,终止该线程。



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值