static void Main(string[] args)
        {
            Thread orderServiceThread = new Thread(new ThreadStart(StartOrderServic));
            Thread userServiceThread = new Thread(new ThreadStart(StartUserService));
            Thread productServiceThread = new Thread(new ThreadStart(StartProductServic));
            orderServiceThread.Start();
            userServiceThread.Start();
            productServiceThread.Start();
            Console.ReadLine();
        }
注:StartOrderServic、StartUserService、StartProductServic分别为三个服务,请问以上的是否实现了多线程,这几个服务可以同时运行吗?如果需要修改如何修改呢?

解决方案 »

  1.   

    但是注意如果它们同时读写公共数据或资源,需要同步,例如用lock等.
      

  2.   

    StartOrderServic、StartUserService、StartProductServic三个程序已是同时运行了
      

  3.   

    我想以上的多线程应该有个默认的循环时间吧?多线程地原理应该就使几个程序轮流执行一段时间吧?有点像操作系统对吧?这时间如何设置呢?默认多少? 
    ________________________________________________________________
    这个有操作系统决定,你自己可以控制线程的Priority .
    以上多线程程序我在应用中是有问题的。
    _________________________________
    什么问题?
      

  4.   

    启动时无法调用StartUserService服务,如果单个启动StartUserService却可以应用,请问什么原因呢?
      

  5.   

    是否我用该去设置下客户端的timeout时间长一点呢?
      

  6.   

    你需要自己检查一下代码,StartUserService和其它两个服务之间有无公共资源,如果有,是不是在等待那两个服务释放开资源; 或者有无被其它两个线程阻塞住的逻辑. 这里边可能比较复杂,一言难尽.