myTimer.Enabled = false;
            //执行accept(),当挂起队列为空时将阻塞本线程,同时由于上一语句,定时器将停止,直至有连接传入
            Socket acceptSock = sock.Accept();
            //将accept()产生的Socket对象存入ArrayList
            alSock.Add(acceptSock);
            // 构造Threading.Timer对象,这将导致程序另启线程。线程将执行回调函数,该委托限制
            //函数参数须为object型。Threading.Timer构造器的第二个参数即传入回调函数的参数;
            //第三个参数指定延时,取0则立即启动;最后参数间隔,取0则只执行一次。
            System.Threading.Timer ti = new System.Threading.Timer(new TimerCallback(ReceiveMsg), acceptSock, 0, 0);
            myTimer.Enabled = true;
            //设置接收数据缓冲区的大小 
            Byte[] recData = new Byte[300000000];
            //接收数据 
            acceptSock.Receive(recData);//由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。(这部报错,怎么回事啊?)
            if (acceptSock.Receive(recData) > 0)
            {
                MessageBox.Show("网页在" + DateTime.Now.ToString()
                + "接收的数据大小为:" + acceptSock.Receive(recData).ToString());
            }
            string strFileName = ConfigurationManager.AppSettings["Mz"];
            FileStream fileStream = new FileStream(strFileName, FileMode.OpenOrCreate);
            BinaryWriter writer = new BinaryWriter(fileStream);
            writer.Write(recData, 0, recData.Length - 1);
            //关闭写文件流 
            fileStream.Close();
            writer.Close();
            //关闭接收数据的Socket 
            acceptSock.Shutdown(SocketShutdown.Receive);
            acceptSock.Close();