public async Task CanQueueAndExecuteMultipleTasksInCorrectOrder() { int numberOfTasks = 5; int[] testValues = new int[numberOfTasks]; int[] checkValues = new int[numberOfTasks]; BackgroundWorkerQueue queue = new BackgroundWorkerQueue(); for (int i = 0; i < numberOfTasks; i++) { int valueToSet = i; checkValues.SetValue(valueToSet + 1, valueToSet); ; queue.enqueue(() => { testValues.SetValue(valueToSet + 1, valueToSet); }); } await queue.execute(); for (int k = 0; k < numberOfTasks; k++) { Assert.AreEqual(checkValues[k], testValues[k]); } }
public static BackgroundJob Dequeue() { BackgroundJob result = null; BackgroundWorkerQueue.TryDequeue(out result); return(result); }
public static void AddJobToQueue(BackgroundJob job) { //Logger.Info("adding job " + job.Event.Description + " to backgorund queue"); BackgroundWorkerQueue.Enqueue(job); MainEvent.Set(); MainEvent.Reset(); // must call reset right after set, else the next call to WaitOne will not block }
protected BackgroundRequestHandler(IServiceProvider serviceProvider, BackgroundWorkerQueue backgroundWorkerQueue, IMemoryCache memoryCache) { _serviceProvider = serviceProvider; _backgroundWorkerQueue = backgroundWorkerQueue; _memoryCache = memoryCache; }
public Handler( IUserContext userContext, IServiceProvider serviceProvider, BackgroundWorkerQueue backgroundWorkerQueue, IMemoryCache memoryCache) : base(serviceProvider, backgroundWorkerQueue, memoryCache) { UserId = userContext.UserId; }
public BackgroundWorkerQueueDialog(string title, ProgressBarStyle style = ProgressBarStyle.Blocks) { InitializeComponent(); this.Text = title; this.progressBar1.MarqueeAnimationSpeed = 30; queue = new BackgroundWorkerQueue(this.backgroundWorker1); backgroundWorker1.ProgressChanged += BackgroundWorker1_ProgressChanged; progressBar1.Maximum = 100; progressBar1.Value = 0; progressBar1.Style = style; backgroundWorker1.RunWorkerCompleted += BackgroundWorker1_RunWorkerCompleted; }
public ImportService(BackgroundWorkerQueue backgroundWorkerQueue, IServiceScopeFactory serviceScopeFactory, IDal <ImportLog, ImportLogModel> dalImportLog, IUANodeSetResolverWithProgress cloudLibResolver, ILogger <ImportService> logger, IConfiguration configuration) { _backgroundWorkerQueue = backgroundWorkerQueue; _logger = logger; _serviceScopeFactory = serviceScopeFactory; _dalImportLog = dalImportLog; _configuration = configuration; _nodeSetResolver = cloudLibResolver; }
public async Task CanQueueAndExecuteTask() { int testValue = 0; BackgroundWorkerQueue queue = new BackgroundWorkerQueue(); queue.enqueue(() => { testValue++; }); await queue.execute(); Assert.AreEqual(1, testValue); }
public async Task CanQueueAndExecuteMultipleTasks() { int testValue = 0; int numberOfTasks = 5; BackgroundWorkerQueue queue = new BackgroundWorkerQueue(); for (int i = 0; i < numberOfTasks; i++) { queue.enqueue(() => { testValue++; }); } await queue.execute(); Assert.AreEqual(numberOfTasks, testValue); }
public LongRunningService(BackgroundWorkerQueue queue) { _queue = queue; }