........
Thread t=new Thread(new ThreadStart(readData));t.Start();
private void readData()
{
//TODO;读取数据防到datatable里面去
}

解决方案 »

  1.   

    这个怎么写,就创建一次线程吗,我试过        
             private void result()
            {
                int rs = 0;
                for (int i = 0; i < 1000000000; i++)
                {
                    rs = rs + i;
                }
                MessageBox.Show(rs.ToString());
            }
            private void button1_Click(object sender, EventArgs e)
            {
                Thread NewThread = new Thread(new ThreadStart(result));
                NewThread.IsBackground = true;
                if (!NewThread.IsAlive) NewThread.Start(); 
            }
    我这么些过,也没快呀,我想能否分多个线程,提高读取速度。
      

  2.   

            private void result() 
            { 
                int rs = 0; 
                for (int i = 0; i < 1000000000; i++) 
                { 
                    rs = rs + i; 
                } 
                MessageBox.Show(rs.ToString()); 
            } 
            private void button1_Click(object sender, EventArgs e) 
            { 
                Thread NewThread = new Thread(new ThreadStart(result)); 
                NewThread.IsBackground = true; 
                if (!NewThread.IsAlive) NewThread.Start(); 
            } 
    我这么写有错误码,怎么没见快呢
      

  3.   

    up楼上
    核心部分要加锁lock
      

  4.   

    这样:
    1 开辟n个线程
    2 每个线程读取m条记录,需要有个字段表示行号,则读范围是-> 行号 between(m1,m2)
    3 每个线程读取后保存到自己的datatable
    4 把所有这些datatable 合并成(datatable 有merge方法) 一个DataTable(你要的那个)
    也许会快些,试试!