/// <summary> /// Starts processing a tile now /// </summary> private void StartTileProcessing(DynamicTileBuilderRequest request) { busy = true; RawSendMessage(0, new Dictionary <string, byte[]> { { "REQUEST", Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(request)) } }); }
/// <summary> /// Adds a tile to the queue. Public API /// </summary> /// <param name="request"></param> public void ProcessTile(DynamicTileBuilderRequest request) { //If this is not busy, run now. If it is, queue it if (!busy) { StartTileProcessing(request); } else { pending.Enqueue(request); } }