threads no harbour
Moderador: Moderadores
-
hrodrigom
- Usuário Nível 2

- Mensagens: 63
- Registrado em: 10 Nov 2007 08:04
- Localização: Santa Rita - Paraguay
threads no harbour
Boa tade caros colegas
Como eu uso threads com o harbour?
Grato
Como eu uso threads com o harbour?
Grato
____________________
Rodrigo Machado
FlaRo Sistemas
http://www.flaro.net
Rodrigo Machado
FlaRo Sistemas
http://www.flaro.net
Re: threads no harbour
Olá,
No Harbour não tem, por enquanto. No xHarbour dê uma olhada em /xharbour/tests/mt*.prg
[]'s
Rodrigo
No Harbour não tem, por enquanto. No xHarbour dê uma olhada em /xharbour/tests/mt*.prg
[]'s
Rodrigo
-
hrodrigom
- Usuário Nível 2

- Mensagens: 63
- Registrado em: 10 Nov 2007 08:04
- Localização: Santa Rita - Paraguay
Re: threads no harbour
E como eu poderia deixar rodando uma função em segundo plano no harbour?
Esta função chamaria outra em algum momento.
com xharbour eu já estou conseguindo, mas gostaria de usar a xhgtk para fazer alguns testes, mas não estou conseguindo usar o xharbor+xhgtk no windows.
Já consigo gerar a libxhgtk com xharbour, mas não consigo compilar minha aplicação.
Esta função chamaria outra em algum momento.
com xharbour eu já estou conseguindo, mas gostaria de usar a xhgtk para fazer alguns testes, mas não estou conseguindo usar o xharbor+xhgtk no windows.
Já consigo gerar a libxhgtk com xharbour, mas não consigo compilar minha aplicação.
____________________
Rodrigo Machado
FlaRo Sistemas
http://www.flaro.net
Rodrigo Machado
FlaRo Sistemas
http://www.flaro.net
Re: threads no harbour
Olá Rodrigo,
No Harbou não tem como. Mas enfim, qual o problema que vc está enfrentando? Pois o xharbour que vem com o instalador da xhgtk está funcionando. Aliás vou pedir pra mover esta thread pra lista da xhgtk.
[]'s
Rodrigo
No Harbou não tem como. Mas enfim, qual o problema que vc está enfrentando? Pois o xharbour que vem com o instalador da xhgtk está funcionando. Aliás vou pedir pra mover esta thread pra lista da xhgtk.
[]'s
Rodrigo
-
hrodrigom
- Usuário Nível 2

- Mensagens: 63
- Registrado em: 10 Nov 2007 08:04
- Localização: Santa Rita - Paraguay
Re: threads no harbour
Testei o xHarbour que vem no instalador, funciona.
Mas não tem nenhuma biblioteca *mt
Baixei o xharbour para mingw em http://www.xharbour.org, re-compilei a lib xhgtk. E ai não funciona mais nada,
Veja o final do erro.
Mas não tem nenhuma biblioteca *mt
Baixei o xharbour para mingw em http://www.xharbour.org, re-compilei a lib xhgtk. E ai não funciona mais nada,
Veja o final do erro.
Código: Selecionar todos
ference to `hb_mouse_Col'
C:\xHgtk\xharbour\lib/librtl.a(mouseapi.o):mouseapi.c:(.text+0x65): undefined re
ference to `hb_mouse_Row'
C:\xHgtk\xharbour\lib/librtl.a(mouseapi.o):mouseapi.c:(.text+0x75): undefined re
ference to `hb_mouse_SetPos'
C:\xHgtk\xharbour\lib/librtl.a(mouseapi.o):mouseapi.c:(.text+0x85): undefined re
ference to `hb_mouse_IsButtonPressed'
C:\xHgtk\xharbour\lib/librtl.a(mouseapi.o):mouseapi.c:(.text+0x95): undefined re
ference to `hb_mouse_CountButton'
C:\xHgtk\xharbour\lib/librtl.a(mouseapi.o):mouseapi.c:(.text+0xa5): undefined re
ference to `hb_mouse_SetBounds'
C:\xHgtk\xharbour\lib/librtl.a(mouseapi.o):mouseapi.c:(.text+0xb5): undefined re
ference to `hb_mouse_GetBounds'
C:\xHgtk\xharbour\lib/librtl.a(gt.o):gt.c:(.text+0x56): undefined reference to `
hb_gt_Version'
C:\xHgtk\xharbour\lib/librtl.a(maxrow.o):maxrow.c:(.text+0x50): undefined refere
nce to `hb_gt_info'
C:\xHgtk\xharbour\lib/librtl.a(maxrow.o):maxrow.c:(.text+0x7a): undefined refere
nce to `hb_gt_info'
C:\xHgtk\xharbour\lib/librtl.a(maxrow.o):maxrow.c:(.text+0xd0): undefined refere
nce to `hb_gt_info'
C:\xHgtk\xharbour\lib/librtl.a(maxrow.o):maxrow.c:(.text+0xfa): undefined refere
nce to `hb_gt_info'
collect2: ld returned 1 exit status
C:\xHgtk\samples\functions>build trayicon____________________
Rodrigo Machado
FlaRo Sistemas
http://www.flaro.net
Rodrigo Machado
FlaRo Sistemas
http://www.flaro.net
Re: threads no harbour
Rodrigo,
Vou tentar compilar o xharbour que está no instalador, mas com a opção MT. Qualquer novidade eu posto aqui.
UPDATE:
O problema acima deve ser a falta da GTNUL, que antes era necessário link. Atualmente, tnato xharbour ou harbour nao precisa. Mas acho que a versão que esta lá é muito antiga.
[]'s
Rodrigo
Vou tentar compilar o xharbour que está no instalador, mas com a opção MT. Qualquer novidade eu posto aqui.
UPDATE:
O problema acima deve ser a falta da GTNUL, que antes era necessário link. Atualmente, tnato xharbour ou harbour nao precisa. Mas acho que a versão que esta lá é muito antiga.
[]'s
Rodrigo
Editado pela última vez por rodrmigu em 05 Ago 2008 15:39, em um total de 1 vez.
Re: threads no harbour
Rodrigo,
Eu não consegui compilar o xharbour do cvs para o MinGw com suporte a MT. Aliás, deram centenas de warnings na compilação entre outros vários warnings, etc, enfim, esta é uma das coisas que me irritam no xharbour, uma hora funciona e depois numa nova versão já para de funcionar
Entretanto, consegui compilar a ultima versao do xharbour com o MSVC 7.1 e consegui linkar tb com suporte MT e testar junto com xhgtk. Ou seja, talvez a sua saída se desejar usar MT, seja usar o MSVC.
Se vc não tiver o MSVC 7.1 command line gratuíto me avise. Se quiser eu posso lhe mandar o xharbour do cvs já compilado tb.
Este foi o programa que testei:
[]'s
Rodrigo
Eu não consegui compilar o xharbour do cvs para o MinGw com suporte a MT. Aliás, deram centenas de warnings na compilação entre outros vários warnings, etc, enfim, esta é uma das coisas que me irritam no xharbour, uma hora funciona e depois numa nova versão já para de funcionar
Entretanto, consegui compilar a ultima versao do xharbour com o MSVC 7.1 e consegui linkar tb com suporte MT e testar junto com xhgtk. Ou seja, talvez a sua saída se desejar usar MT, seja usar o MSVC.
Se vc não tiver o MSVC 7.1 command line gratuíto me avise. Se quiser eu posso lhe mandar o xharbour do cvs já compilado tb.
Este foi o programa que testei:
Código: Selecionar todos
#include "hbclass.ch"
#include "xhgtk.ch"
PROCEDURE Main()
Local oWindow
Local oButton1
Local oButton2
INIT WINDOW oWindow ;
AT 0,0 ;
TITLE "Button Command Test" ;
SIZE 640, 480 ;
CENTER ;
RESIZEABLE
@ 435, 460 BUTTON oButton1 ;
CAPTION "_Ok" ;
SIZE 80, 30 ;
ACTION Test() ;
HINT "Ok Hint" ;
IMAGE "gtk-ok" ;
OF oWindow
@ 400, 550 BUTTON oButton2 ;
CAPTION "_Close" ;
SIZE 80, 80 ;
ACTION oWindow:close() ;
HINT "Close Hint" ;
IMAGE "gtk-close" POSITION GTK_POS_TOP;
OF oWindow
ACTIVATE WINDOW oWindow
RETURN
PROCEDURE Test()
LOCAL nStart := Seconds()
LOCAL oMyObject := MyClass()
LOCAL MethodPtr := HB_ObjMsgPtr( oMyObject, "Count" )
LOCAL xThread
CLEAR SCREEN
nStart := Seconds()
// 1st param is the Startup Function, 2nd. is Self if 1st param is a Method or NIL otherwise,
// rest are paramaters to be passed to the Function/Method.
StartThread ( @MyThreadFunc(), 2, "1st Thread:", 0, 5000 )
StartThread ( @MyThreadFunc(), 4, "2nd Thread:", 5000, 10000 )
StartThread ( @MyThreadFunc(), 6, "3rd Thread:", 10000, 15000 )
WaitForThreads()
@ 8, 0 SAY "Threads Time:" + Str( Seconds() - nStart )
nStart := Seconds()
// StartThread() for methods can be called using an already available
// Method Pointer or using a method name
StartThread ( oMyObject, "Count", 10, "1st Thread:", 0, 5000 )
StartThread ( oMyObject, "Count", 12, "2nd Thread:", 5000, 10000 )
StartThread ( oMyObject, MethodPtr, 14, "3rd Thread:", 10000, 15000 )
WaitForThreads()
@ 16, 0 SAY "[METHODS] Threads Time:" + Str( Seconds() - nStart )
nStart := Seconds()
MyThreadFunc( 18, "1st Run:", 0, 5000 )
MyThreadFunc( 20, "2nd Run:", 5000, 10000 )
MyThreadFunc( 22, "3rd Run:", 10000, 15000 )
@ 24, 0 SAY "Sequential Time:" + Str( Seconds() - nStart )
Inkey(0)
RETURN
PROCEDURE MyThreadFunc( nRow, cName, nStart, nMax )
LOCAL i
FOR i := nStart TO nMax
//@ nRow, 10 SAY cName + Str( i )
// Atomic operation
DispOutAt(nRow, 10, cName + Str( i ))
NEXT
RETURN
CLASS MyClass
METHOD Count( nRow, cName, nStart, nMax )
ENDCLASS
METHOD Count( nRow, cName, nStart, nMax ) CLASS MyClass
LOCAL i
FOR i := nStart TO nMax
//@ nRow, 10 SAY cName + Str( i )
// Atomic operation
DispOutAt(nRow, 10, cName + Str( i ))
NEXT
RETURN NIL
Rodrigo
- mhackervix
- Usuário Nível 3

- Mensagens: 105
- Registrado em: 11 Fev 2008 02:06
- Localização: ES
Re: threads no harbour
A alguns Meses atraz andei testando com o Xailer (xHarbour) e não obtive sucesso, inclusive postei duvidas aqui no forum. Consegui colocar minha aplicação com thread para rodar utilizando Xbase++.
att.
att.
Mhackervix, Msc.
- sygecom
- Administrador

- Mensagens: 7131
- Registrado em: 21 Jul 2006 10:12
- Localização: Alvorada-RS
- Contato:
Re: threads no harbour
Olá Mhackervix,
Seria possivel você colocar um passo a passo para ajudar inciantes que querem testar a xbase++ , estou querendo testar, mas nem sei de onde baixar, e como dar os primeiros passos ou até mesmo se posso aproveitar algo dos meus sistema que esta usando lib de terceiros como a VL, se for possivel, abra um topico em:
viewforum.php?f=28
Desde já Agradeço.....
Seria possivel você colocar um passo a passo para ajudar inciantes que querem testar a xbase++ , estou querendo testar, mas nem sei de onde baixar, e como dar os primeiros passos ou até mesmo se posso aproveitar algo dos meus sistema que esta usando lib de terceiros como a VL, se for possivel, abra um topico em:
viewforum.php?f=28
Desde já Agradeço.....
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
xHarbour.org + Hwgui + PostgreSql
- software_facil
- Usuário Nível 3

- Mensagens: 211
- Registrado em: 23 Fev 2005 12:19
- Localização: Curitiba/PR
- Contato:
Re: threads no harbour
Não sei se alguém lembra, mas ai vai o link : http://www.recital.com/index.htm?/produ ... &mainFrame
Se alguém for comprar, e quiser me dar uma cópia de presente, estou aceitando, não sou orgulhoso !
Abraços
Se alguém for comprar, e quiser me dar uma cópia de presente, estou aceitando, não sou orgulhoso !
Abraços
messenger : software_facil@hotmail.com
- mhackervix
- Usuário Nível 3

- Mensagens: 105
- Registrado em: 11 Fev 2008 02:06
- Localização: ES
Re: threads no harbour
Abra o tópico e me avise que colocarei um passo a passo inicial.sygecom escreveu:Olá Mhackervix,
Seria possivel você colocar um passo a passo para ajudar inciantes que querem testar a xbase++ , estou querendo testar, mas nem sei de onde baixar, e como dar os primeiros passos ou até mesmo se posso aproveitar algo dos meus sistema que esta usando lib de terceiros como a VL, se for possivel, abra um topico em:
viewforum.php?f=28
Desde já Agradeço.....
att.
Mhackervix, Msc.
- mhackervix
- Usuário Nível 3

- Mensagens: 105
- Registrado em: 11 Fev 2008 02:06
- Localização: ES
Re: threads no harbour
O Demo e documentações do xBase++ podem ser obtidas no site da Alaska ( http://www.alaska-software.com ).
att.
att.
Mhackervix, Msc.