Example #1
0
        private void WriteDurableQueueIfDirty()
        {
            if (_durableQueueDirty)
            {
                _durableQueueDirty = false;

                if (GSPlatform.PersistentDataPath != null)
                {
                    List <GSRequest> requestsToWrite;

                    lock (_persistantQueue) {
                        requestsToWrite = DurableQueueEntries;
                    }

                    QueuePersistor.Write(this, requestsToWrite);
                }
            }
        }
Example #2
0
        private void InitialisePersistentQueue()
        {
            if (_persistantQueueUserId == GSPlatform.UserId)
            {
                return;
            }

            _durableQueuePaused = true;

            LinkedList <GSRequest> queue = new LinkedList <GSRequest>();

            if (GSPlatform.PersistentDataPath != null)
            {
                queue = QueuePersistor.Read(this);
            }

            if (_persistantQueue != null)
            {
                lock (_persistantQueue)
                {
                    _persistantQueue = queue;
                }
            }
            else
            {
                _persistantQueue = queue;
            }

            _persistantQueueUserId = GSPlatform.UserId;

            if (DurableQueueLoaded != null)
            {
                DurableQueueLoaded();
            }

            _durableQueuePaused = false;

            Log("_persistantQueue COUNT : " + _persistantQueue.Count);
        }