コード例 #1
0
 //检测文件是否正在使用中,如果正在使用中则检测是否被上传协议占用,如果占用则关闭,真表示正在使用中,并没有关闭
 public bool CheckFileInUse(string fileName)
 {
     if (BasicFunc.IsFileInUse(fileName))
     {
         bool result = true;
         lock (m_asyncSocketServer.DownloadSocketProtocolMgr)
         {
             DownloadSocketProtocol downloadSocketProtocol = null;
             for (int i = 0; i < m_asyncSocketServer.DownloadSocketProtocolMgr.Count(); i++)
             {
                 downloadSocketProtocol = m_asyncSocketServer.DownloadSocketProtocolMgr.ElementAt(i);
                 if (fileName.Equals(downloadSocketProtocol.FileName, StringComparison.CurrentCultureIgnoreCase))
                 {
                     lock (downloadSocketProtocol.AsyncSocketUserToken) //AsyncSocketUserToken有多个线程访问
                     {
                         m_asyncSocketServer.CloseClientSocket(downloadSocketProtocol.AsyncSocketUserToken);
                     }
                     result = false;
                 }
             }
         }
         return(result);
     }
     else
     {
         return(false);
     }
 }
コード例 #2
0
 public void Remove(DownloadSocketProtocol value)
 {
     m_list.Remove(value);
 }
コード例 #3
0
 public void Add(DownloadSocketProtocol value)
 {
     m_list.Add(value);
 }