Pular para o conteúdo principal

Postagens

Mostrando postagens de julho, 2015

Postagem em destaque

🚀 Oferecendo Serviços Remotos de Desenvolvedor AdvPL e Mais 🖥️

🚀 Oferecendo Serviços Remotos de Desenvolvedor AdvPL e Mais 🖥️ Olá pessoal, Espero que este post encontre todos vocês bem! É com grande entusiasmo que compartilho que estou expandindo meus serviços como Desenvolvedor AdvPL para novos desafios e colaborações. Com mais de duas décadas de experiência sólida, minha jornada profissional tem sido enriquecedora, com a oportunidade de participar de projetos empolgantes ao longo dos anos. Agora, estou ansioso para trazer minha experiência e habilidades para novas equipes e projetos, trabalhando de forma remota. Minha expertise abrange não apenas AdvPL, mas também outras tecnologias-chave, incluindo JS, SQL, Infraestrutura e Otimização de Processos. Acredito que essa combinação de conhecimentos me permite oferecer soluções abrangentes e eficazes para uma variedade de necessidades de desenvolvimento. Acredito que a tecnologia tem o poder de transformar negócios e impulsionar o sucesso, e estou comprometido em ajudar meus clientes a alcançar seu

BlackTDN :: utThread (tBigNThread) : Exemplo de Uso classe em AdvPL

Exemplo de uso para a classe em AdvPL: utThread ( ndjlib031.prg ). Obs.: A classe utThread é completamente dependente de tBigNThread ( tBigNThread.prg : um vez que deriva desta) então, para executar o exemplo de teste abaixo, compile, também, os programas que se encontram aqui . Ao exemplo: #include "tBigNumber.ch" #define TST_MAXTHREAD 15 user procedure ThreadT1() local oProcess:=MsNewProcess():New({||thProcess(oProcess)}) oProcess:Activate() return static function thProcess(oProcess) Local oThread:=utThread():New(oProcess) Local nThread Local nThreads:=TST_MAXTHREAD Local nValor1 Local nValor2 Local nTotal oThread:Start(nThreads) oProcess:SetRegua1(nThreads) oProcess:SetRegua2(0) For nThread:=1 To nThreads nValor1:=nThread nValor2:=(nThreads-nThread) oProcess:IncRegua2() if ((nThread%2)==0) oThread:setEvent(nThread,{"u_Sum",nValor1,nValor2}) else o