diff --git a/MTSC/MTSC.csproj b/MTSC/MTSC.csproj
index ce1462b..9c10e72 100644
--- a/MTSC/MTSC.csproj
+++ b/MTSC/MTSC.csproj
@@ -5,12 +5,12 @@
netcoreapp2.1;net48;netstandard2.0;netcoreapp3.0
- 2.1.1
+ 2.1.2
Alexandru-Victor Macocian
MTSC
Modular TCP Server and Client
- 0.2.1.1
- 0.2.1.1
+ 0.2.1.2
+ 0.2.1.2
true
AnyCPU;x64
https://github.com/AlexMacocian/MTSC
diff --git a/MTSC/ServerSide/Schedulers/SequentialProcessingScheduler.cs b/MTSC/ServerSide/Schedulers/SequentialProcessingScheduler.cs
new file mode 100644
index 0000000..edb0ffa
--- /dev/null
+++ b/MTSC/ServerSide/Schedulers/SequentialProcessingScheduler.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Concurrent;
+
+namespace MTSC.ServerSide.Schedulers
+{
+ public class SequentialProcessingScheduler : IScheduler
+ {
+ void IScheduler.ScheduleHandling(IProducerConsumerCollection<(ClientData, Message)> inQueue, Action messageHandlingProcedure)
+ {
+ while (inQueue.TryTake(out var tuple))
+ {
+ (var client, var message) = tuple;
+ messageHandlingProcedure.Invoke(client, message);
+ }
+ }
+ }
+}
diff --git a/MTSC/ServerSide/Schedulers/TaskAwaiterScheduler.cs b/MTSC/ServerSide/Schedulers/TaskAwaiterScheduler.cs
index 9f5c751..4debaaf 100644
--- a/MTSC/ServerSide/Schedulers/TaskAwaiterScheduler.cs
+++ b/MTSC/ServerSide/Schedulers/TaskAwaiterScheduler.cs
@@ -5,7 +5,7 @@ using System.Threading.Tasks;
namespace MTSC.ServerSide.Schedulers
{
- class TaskAwaiterScheduler : IScheduler
+ public class TaskAwaiterScheduler : IScheduler
{
void IScheduler.ScheduleHandling(IProducerConsumerCollection<(ClientData, Message)> inQueue, Action messageHandlingProcedure)
{