public void EnqueueJob(GetUserAsyncJob job)
 {
     job.parent = this;
     _jobQueue.Enqueue(job);
 }
 public void ExecuteNextJob()
 {
     executingJob = _jobQueue.Dequeue();
     executingJob.Execute();
 }
 public void CallPendingResults()
 {
     if(executingJob != null && executingJob.IsResultRetrived)
     {
         executingJob.InvokeResult();
         executingJob = null;
     }
 }