示例#1
0
        static void Main(string[] args)
        {
            // Lógica para simular um serviço
            var processo     = new Processar();
            var taskProcesso = Task.Run(() => processo.Executar());
            var taskControle = Task.Run(() => {
                if (Console.ReadLine() == "PARAR")
                {
                    processo.SolicitarEncerramento();
                    Console.Write("Aguardando encerramento do processo");
                    while (taskProcesso.Status != TaskStatus.RanToCompletion)
                    {
                        Console.Write(".");
                        Thread.Sleep(TimeSpan.FromSeconds(1));
                    }
                }
            });

            Console.WriteLine("Processo em execução.");
            Console.WriteLine("Para encerrar o processo, digite PARAR e tecle ENTER.");

            while (taskProcesso.Status != TaskStatus.RanToCompletion || taskControle.Status != TaskStatus.RanToCompletion)
            {
                Thread.Sleep(TimeSpan.FromSeconds(1));
            }

            Console.WriteLine();
            Console.WriteLine("Processo encerrado");
            Console.ReadLine();
        }
示例#2
0
        public static void Start()
        {
            NFe.Service.TFunctions.CriarArquivosParaServico();

            Empresas.CarregaConfiguracao();

            #region Ticket #110
            Empresas.CreateLockFile(true);
            #endregion

            //Executar o monitoramento de pastas das empresas cadastradas
            MonitoraPasta e = new MonitoraPasta();

            Threads.Clear();

            //Executa a thread que faz a limpeza dos arquivos temporários
            Thread t = new Thread(new Processar().LimpezaTemporario);
            t.IsBackground = true;
            t.Start();
            Threads.Add(t);

            //Executa a thread que faz a verificação das notas em processamento
            Thread t2 = new Thread(new Processar().EmProcessamento);
            t2.IsBackground = true;
            t2.Start();
            Threads.Add(t2);

            //Executar a thread que faz a consulta do recibo das notas fiscais enviadas
            Processar srv = new Processar();
            Thread    t3  = new Thread(srv.GerarXMLPedRec);
            t3.IsBackground = true;
            t3.Start(new NFe.Service.TaskNFeGerarXMLPedRec());
            Threads.Add(t3);
        }
示例#3
0
        public void ProcessarDados([FromBody] List <DadosInputModel> Dados)
        {
            var classe       = "Risco";
            var Propriedades = new Extensoes().GerarPropriedades(Dados, classe);
            var Arvore       = new Processar().InduzirArvore(Dados, Propriedades, classe);

            Ok(Arvore);
        }