回 帖 发 新 帖 刷新版面

主题:c#线程问题,请高手近来帮忙解决!

小弟从书上打的一段线程的代码,可编译运行后控制台反映狂慢,等半天也输不出结果,请各位高人帮忙指点一下,代码如下:

using System;
using System.Threading;

namespace ThreadTest
{
    
    class Class1
    {
        [STAThread]
        static void Main(string[] args)
        {
            Class1 demo = new Class1();
            Thread one = new Thread(new ThreadStart(demo.count));
            Thread two = new Thread(new ThreadStart(demo.count));
            Thread three = new Thread(new ThreadStart(demo.count));

            one.Name = "Thread One";
            two.Name = "Thread two";
            three.Name = "Thread three";

            one.Start();
            two.Start();
            three.Start();

            Thread.Sleep(500);
            one.Suspend();
            three.Abort();
            two.Join();
            one.Resume();
        }

        public void count()
        {
            try
            {
                for(int i = 0;i<5;i++)
                {
                    Console.WriteLine("{0}:{1}",Thread.CurrentThread.Name,i);
                    Thread.Sleep(200);
                }
            }
            catch(ThreadAbortException e)
            {
                Console.WriteLine("\nAttempt to Abort" + Thread.CurrentThread.Name);
                Console.WriteLine(e.Message);
                
            }
            Console.WriteLine(Thread.CurrentThread.Name + " : out of for loop");
        }

    }
}

回复列表 (共1个回复)

沙发

代码没看出错来

我运行了下也正常,你检查一下别的设置吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册