启动程序后....创建一个线程...这个线程..启动后处于等待状态..
如果对 fileurl  变量的赋值的时候,
就下载 fileurl 这个链接的文件保存到 硬盘... 
对 fileurl 赋值是多线程的.同时可能有多个线程对 fileurl 赋值请大家给我一个思路.如何创建一个这样的等待线程...............
我现在做的程序...是把文件下载完毕后,才执行下一步工作...可是等待下载完毕要耗费很多时间...
如果每一个下载都创建一个线程的话...又有些不实际...我的是多线程程序........同时有多个线程在工作...每个线程都要下载很多文件...所以我想创建一个线程.............来专门下载 那些工作线程 需要下载的文件.请大家给我一个思路.如何创建一个这样的等待线程...............如果能给个列子就更好呢..

解决方案 »

  1.   

    首先,建立一个事件.public delegate void OnNewFileDelegate(string fileUrl);public event OnNewFileDelagete OnNewFile;在线程方法中,注册一个方法处理这个事件.每次新文件到你手动触发OnNewFile事件就可以了.
      

  2.   

    using System;
    using System.Collections.Generic;
    using System.Text;namespace ConsoleApplication1
    {
        class Program
        {
            public delegate void OnNewFileDelegate(string fileUrl);
            public event OnNewFileDelegate OnNewFile;         static void Main(string[] args)
            {
                Program p = new Program();
                p.aa();            Console.Read();
            }        void aa()
            {
                this.OnNewFile += new OnNewFileDelegate(Program_OnNewFile);
                this.OnNewFile("bb");
            }        void Program_OnNewFile(string fileUrl)
            {
                Console.WriteLine(fileUrl);
            }
        }
    }
    这样吗...可是这样 事件 还是在  当前线程里面执行的呀...我想单独开一个线程来执行下载文件....使用队列来下载..这个下载好呢..继续下一个