Exemple #1
0
        public SharedMessageQueue(string file)
        {
            File = file;

            if (System.IO.File.Exists(File))
            {
                Log("Opening Queue File");
                MMF      = MemoryMappedFile.CreateFromFile(File, FileMode.Open, "communicator", MaxSize);
                Accessor = MMF.CreateViewAccessor(0, ReservedSize);
                Log("Opened Queue File");
            }
            else
            {
                Log("Creating Queue File");
                MMF      = MemoryMappedFile.CreateFromFile(File, FileMode.Create, "communicator", MaxSize);
                Accessor = MMF.CreateViewAccessor(0, ReservedSize);
                Front    = ReservedSize;
                Rear     = ReservedSize;
                IsEmpty  = true;
                IsFull   = false;
                Log("Created Queue File");
            }

            Log("Front:{0}, Rear:{1}", Front, Rear);
        }