Hi, I've been struggling with a problem for about a week now. It's completely simple and relies entirely on logic, but I seem to be having some trouble.
Basically, you have 3 sources and each of them creates an item (task) with its own type A, B and C. They go into one queue and then into the processor. Tasks of type A and B (yellow and green, respectively) can be processed by the system's processor simultaneously in the amount of up to 5, but provided that there is no task of type C (red) on the processor at the moment. In this case, they must wait until the task of type C finishes its processing.
In turn, tasks of type C require that the processor is free from other tasks. If there is something on the processor, then this task must wait until all tasks on the processor have completed their processing.
As you can see, these conditions are mutually exclusive and still simple, but I got stuck at the stage of implementing them in the model. I tried to use messages, but everything turned out to be quite laggy and did not work as required by the conditions.
Any help, hints or suggestions will be much appreciated.
My model so far (i can't upload model , so here is link to drive): https://drive.google.com/file/d/1MBnKpXZq_Uh7MKojmFh1okaJHSRjl_io/view?usp=sharing