示例#1
0
        public static void ReadData()
        {
            try
            {
                using (FileStream fs = File.Open(PATH, FileMode.Open))
                {
                    object s2 = s.ReadObject(fs);
                    if (s2 == null)
                    {
                        return;
                    }

                    DatabaseManager.tags = (Dictionary <string, Tag>)s2;
                }
            }
            catch (Exception e)
            {
                return;
            }


            foreach (Tag tag in DatabaseManager.tags.Values)
            {
                //Thread thread= new Thread(new ParameterizedThreadStart(TagProcessing.Read));
                Thread thread = new Thread(() => TagProcessing.Read(tag));
                lock (DatabaseManager.threads)
                {
                    DatabaseManager.threads.Add(tag.id, thread);
                    thread.Start();
                }
            }
        }
示例#2
0
        public bool addTag(Tag tag)
        {
            if (tags.ContainsKey(tag.id))
            {
                return(false);
            }

            lock (tags)
            {
                tags.Add(tag.id, tag);
            }

            //Thread thread = new Thread(new ParameterizedThreadStart(TagProcessing.Read));
            Thread thread = new Thread(() => TagProcessing.Read(tag));

            lock (threads)
            {
                threads.Add(tag.id, thread);
                thread.Start();
            }


            XMLConfig.WriteData();
            return(true);
        }