Exemplo n.º 1
0
        private void loadCompleteAsynch(IAsyncResult ar)
        {
            masterAsyncDelegate masterAsyncDelegate = (masterAsyncDelegate)ar.AsyncState;
            KeyValuePair <string, IEnumerable <XElement> > keyValuePair = masterAsyncDelegate.EndInvoke(ar);

            lock (lockObj)
            {
                startMasterElement.Add(keyValuePair.Key, keyValuePair.Value);
            }
            Interlocked.Decrement(ref callCount);
            if (callCount <= 0)
            {
                isMasterInit = 2;
                initMasterCallback();
                initMasterCallback = null;
            }
        }
Exemplo n.º 2
0
        private void loadStartMstData()
        {
            string tableDirMaster         = Utils.getTableDirMaster("mst_files");
            string uri                    = tableDirMaster + "mst_files.xml";
            IEnumerable <XElement> source = from file in XElement.Load(uri).Elements("item")
                                            select(file);
            List <XElement>     list = source.ToList();
            int                 num  = callCount = list.Count();
            masterAsyncDelegate masterAsyncDelegate = LoadElements;

            for (int i = 0; i < num; i++)
            {
                string value = list[i].Value;

                var a = masterAsyncDelegate.Invoke(value);
                // masterAsyncDelegate.BeginInvoke(value, loadCompleteAsynch, masterAsyncDelegate);
                // loadCompleteAsynch();
                loadCompleteAsynch2(a);
            }
        }