在做一个udp实时传输大量数据的项目。从UDP接收到数据后写人DataTable,每满4000行就用sqlbulkcopy写入数据库,数据库中有4个表。存入4000万条数据后引发类型为“System.OutOfMemoryException”的异常             int RowsCount = 0; 
             DataTable dt1 = new DataTable();
             DataTable dt2 = new DataTable();
             DataTable dt3 = new DataTable();
             DataTable dt4 = new DataTable();
               while (true)
              {
                 try
                {
                       .......//向dt中写入一行数据
                        RowsCount = InsertRows(0, dt1);//四个表每次写人行数是一样的
                       if (RowsCount == 4000)
                        { 
                            using (conn = new SqlConnection(connStr))
                            {
                                conn.Open(); 
                                using (SqlBulkCopy bulkCopy = new SqlBulkCopy(conn))
                                {
                                    bulkCopy.BatchSize = 10000;
                                    bulkCopy.DestinationTableName = newTableName1;  
                                    bulkCopy.WriteToServer(dt1); 
                                    bulkCopy.DestinationTableName = newTableName2;
                                    bulkCopy.WriteToServer(dt2);
                                    bulkCopy.DestinationTableName = newTableName3;
                                    bulkCopy.WriteToServer(dt3);
                                    bulkCopy.DestinationTableName = newTableName4;
                                    bulkCopy.WriteToServer(dt4); 
                                }
                            } 
                            dt1.Clear();
                            dt2.Clear();
                            dt3.Clear();
                            dt4.Clear();
                      }
                    }
                } 
                catch (Exception e)
                {
                    MessageBox.Show(e.ToString()); 
                }