public void Run() { if (!FilaEntrada.Any() && NumberProcessed == NumeroConexoes) { RunConnectedActivities(); return; } else if (!FilaEntrada.Any() || NumberProcessed < NumeroConexoes) { return; } FilaEntrada = FilaEntrada.OrderBy(x => x.Inicio).ToList(); foreach (SItem item in FilaEntrada) { var tempo = CalcularTS(); var newItem = AddItemToFilaProcesso(new SItem { Nome = item.Nome, Inicio = item.Inicio }, tempo); Resultado.Add(newItem); sendToConnection(new SItem { Inicio = newItem.Fim, Nome = newItem.Nome }); } if (Print) { //PrintAtividadesEntrada(); PrintAtividadesResultado(); } RunConnectedActivities(); }