求一解决方案,谢了!发送邮件的方法已经有了,问题在批量发送大量的邮件。

解决方案 »

  1.   

    http://www.codeproject.com/gen/design/DatabaseMailQueue.asp看看或许有些帮助
      

  2.   

    //仅供参考Queue<邮件> 邮件s = new Queue<邮件>();// 启动五个工作线程
    for(int i = 0; i < 5; i++)
    {
        (new Thread(new ThreadStarter(工作进程))).Start();
    }void 工作进程()
    {
        邮件 m = null;
        while(true)
        {
            lock(邮件s.SyncRoot)
            {
                if(邮件s.Count == 0) return;
                m = 邮件s.Dequeue();
            }
            if(!发送邮件(m))
            {
                // 报错,并把邮件加入队列,重新发送
                lock(邮件s.SyncRoot)
                {
                    邮件s.Enqueue(m);
                }
            }
        }
    }