Página 2 de 2

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 17:42
por asimoes
Claudio Soto escreveu:Alexandre probá sin el parámetro HB_THREAD_MEMVARS_COPY

Porque si mal no recuerdo HB_THREAD_MEMVARS_COPY envía una copia de la variable (paso por valor) y no la variable en sí (paso por referencia)
Removi tudo só deixei nThread := Hb_ThreadStart( { || Teste() } ), NÃO FUNCIONOU

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 17:52
por asimoes
Agora porque uma variável vinda de uma classe funciona e de função não funciona?

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 17:57
por asimoes
Será que STATIC sAbort := .F. está sendo iniciada novamente dentro da thread?

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 18:02
por asimoes
Agora porque uma variável vinda de uma classe funciona e de função não funciona?

Esquece coloquei STATIC sAbort := .F. para antes de Main e não funciou a função AbortRun não troca valor

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 18:05
por asimoes
Opa, descobri

STATIC sAbort := .F.

Estava usando THREAD STATIC sAbort := .F. isso fez a diferença, tem que ser somente STATIC VARIAVEL

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 18:11
por asimoes
Agora qual é a diferença entre THREAD STATIC e somente STATIC ?

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 19:18
por Claudio Soto
Probaste solo con estas dos juntas?
HB_THREAD_INHERIT_PUBLIC HB_THREAD_INHERIT_PRIVATE

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 19:43
por asimoes
Claudio Soto escreveu:HB_THREAD_INHERIT_PUBLIC HB_THREAD_INHERIT_PRIVATE
Sim, o problema é esse mesmo STATIC e THREAD STATIC tem até uma explicação aqui no fórum do próprio Quintas

Usando somente STATIC funcionou

Duvida sobre Thread (Hb_ThreadStart)

Enviado: 24 Fev 2021 19:46
por JoséQuintas
asimoes escreveu:Sim, o problema é esse mesmo STATIC e THREAD STATIC tem até uma explicação aqui no fórum do próprio Quintas
Sim.

THREAD STATÎC é justamente pra CADA thread ter uma variável diferente.

STATIC é a mesma variável pra o aplicativo inteiro.