Program.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. // See https://aka.ms/new-console-template for more information
  2. using Quadarax.Foundation.Core.Business.Processor.Providers;
  3. using Quadarax.Foundation.Core.Business.Processor.Queue;
  4. using Quadarax.Foundation.Core.Business.Processor.Task.ExecuteProvider;
  5. using Quadarax.Foundation.Core.Data;
  6. using Quadarax.Foundation.Core.Object;
  7. Console.WriteLine("Processor test bench ...");
  8. using (var processor = new ProcessQueue("TEST", new InMemoryStorageProvider(), new ProcessQueueConfiguration(3, TimeSpan.FromSeconds(5))))
  9. {
  10. for (int i = 0; i < 10; i++)
  11. {
  12. var item = processor.CreateTask($"task{i:D2}",
  13. typeof(DummyExecuteProvider).AssemblyQualifiedName, DummyExecuteProvider.CreateDefaultArguments(),
  14. 5,
  15. 5,
  16. TimeSpan.FromSeconds(5),
  17. DateTime.Now.AddSeconds(5),
  18. DateTime.Now.AddHours(1));
  19. }
  20. processor.Start();
  21. Console.WriteLine("Processor started ...");
  22. Console.WriteLine("Press any key to stop ...");
  23. Console.ReadKey();
  24. processor.Stop();
  25. Console.WriteLine("Processor stopped ...");
  26. }