LIBs e multithread
Enviado: 07 Ago 2024 10:27
Multithread é pouco usada, porque quase ninguém entende isso.
Basicamente é como ter vários EXEs.
Em GTWVG, GTWVT ou equivalente, fica mais visível pra fazer testes e entender um pouco mais, mas TEORICAMENTE dá pra fazer com qualquer LIB.
Multithread é igual EXEs separados, no HARBOUR isso é assim, no Xharbour dizem não funcionar igual.
TANTO FAZ A LIB, não é exclusivo console, apenas acho que console dá uma visão mais prática disso.
Básico:
O que acontece com um programa sem Inkey(0), READ, ou outra coisa ? ele simplesmente não faz nada e fecha.
Então é necessário um Inkey(0) pra parar o programa na tela, e aguardar uma tecla.
Também tem algo importante: se NÃO TIVER TELA, o programa vai ficar travado, e precisa ser fechado no gerenciador de tarefas.
OK? Isto acontece com um programa normal, sem multithread, e pode acontecer também com multithread.
Comparem a tela com uma DIALOG, de qualquer lib gui.
Sempre a captura de teclado e mouse vai ser nessa tela, nessa DIALOG.
Sempre precisa existir uma, pra que funcionem mouse e teclado.
Basicamente é como ter vários EXEs.
Em GTWVG, GTWVT ou equivalente, fica mais visível pra fazer testes e entender um pouco mais, mas TEORICAMENTE dá pra fazer com qualquer LIB.
Multithread é igual EXEs separados, no HARBOUR isso é assim, no Xharbour dizem não funcionar igual.
TANTO FAZ A LIB, não é exclusivo console, apenas acho que console dá uma visão mais prática disso.
Básico:
O que acontece com um programa sem Inkey(0), READ, ou outra coisa ? ele simplesmente não faz nada e fecha.
Código: Selecionar todos
PROCEDURE Main
SetMode(33,100)
CLS
RETURN
Código: Selecionar todos
PROCEDURE Main
SetMode(33,100)
CLS
Inkey(0)
RETURN
OK? Isto acontece com um programa normal, sem multithread, e pode acontecer também com multithread.
Comparem a tela com uma DIALOG, de qualquer lib gui.
Sempre a captura de teclado e mouse vai ser nessa tela, nessa DIALOG.
Sempre precisa existir uma, pra que funcionem mouse e teclado.