手机号码列表进行发送,如果发送不完,当前发送窗体不能关闭,怎样加入线程单独操作,这边短信即使窗口关闭也能继续发短信,我还可以做其他操作呢自己上网搜了下资料,用代理delege什么的,我之前2次开发接口的发送短信功能就无效了,苦恼中。求指导。
//单击发送按钮时,创建线程
  private void btnSend_Click(object sender, EventArgs e)
        {
            Thread thread = new Thread(new ThreadStart(ThreadFunc));
            thread.Start();
        }
    //线程操作
        private void ThreadFunc()
        {
           //将代理实例化为一个匿名代理 
        dd d =delegate()
         
              try
                {
                   if (this.txtContent.Text.Equals(""))
                  {
                      MessageBox.Show("请输入问卷内容!", "提示", MessageBoxButtons.OK);
                        this.txtContent.Focus();
                      return;
                    } if (this.lvPhone.Items.Count == 0)
                    {
                        MessageBox.Show("请输入接收的手机号码");
                        this.lvPhone.Focus();
                   }
                    else //线程操作
        private void ThreadFunc()
        {
           //将代理实例化为一个匿名代理 
            dd d =delegate()
            
              /////
             中间为调用2次开发接口 发送功能
             lvphone为手机号码发送的列表
             lvphone.Invoke(d);}

解决方案 »

  1.   

     //单击按钮 创建一个线程
    private void btnSend_Click(object sender, EventArgs e)
            {
                Thread thread = new Thread(ThreadFunction);
                 thread.IsBackground = true;
                 thread.Start();
            }
    //处理发送的功能 ,费时间操作
    private void ThreadFunction()
            {
    //发送的代码
    }这样写对么 
      

  2.   

    你真正发送的时候再用线程去调用方法
    Thread t=new ThreadStart(发送方法());
    t.start()就可以了
      

  3.   

    thread.IsBackground = true;
    去掉
      

  4.   

    微软已经提供了成熟的线程控件:BackgroundWorker