Hola a todos,
Trabajo con estas versiones:
FWH 64 13.05 (MSVC++)
Harbour 3.2.0dev (r1306211258)
No consigo hacer que me funcione este c贸digo de multihilos. No hace nada cuando se ejecuta
hb_threadStart, devuelve nil.
驴Podr铆ais echarme una mano por favor?
#include "fivewin.ch"
PROCEDURE main()
聽 聽 LOCAL aObj 聽:= Array(1000000)
聽 聽 LOCAL oDlg, oButton 聽 聽
聽 聽 PUBLIC nDestroyed := 0 聽
聽 聽
聽 聽 DEFINE DIALOG oDlg SIZE 400, 500
聽 聽 聽 聽
聽 聽 @ 11, 聽0 BUTTON oButton PROMPT "Start" SIZE 80, 聽8 ACTION Button1_Click(oDlg)
聽 聽
聽 聽 ACTIVATE DIALOG oDlg CENTER
RETURN
PROCEDURE Button1_Click(oDlg)
聽 聽 LOCAL n 聽 聽 聽 聽:= 0
聽 聽 LOCAL pMutex 聽 := HB_MutexCreate()
聽 聽 LOCAL oThread
聽 聽 LOCAL nVal 聽 聽
聽 聽
聽 聽 FOR n :=1 to 10 聽 聽 聽
聽 聽 聽 聽
聽 聽 聽 聽hb_threadStart( @MyFuncForThreads(), pMutex, oDlg, n)
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽
聽 聽 NEXT n
聽 聽
聽 聽 WaitForThreads()
聽 聽
RETURN
PROCEDURE MyFuncForThreads(pMutex, oDlg ,n) 聽 聽
聽 聽
聽 聽 HB_MutexLock(pMutex) 聽 聽
聽 聽 oDlg:Say(n,0,"Thread ID" + lTrim(Str(GetThreadID())) + " system id: " + lTrim(Str(GetSystemThreadID()))) 聽 聽 聽 聽 聽 聽 聽
聽 聽 HB_MutexUnlock(pMutex) 聽 聽 聽 聽
聽
RETURN
El c贸digo lo tom茅 de ejemplo en este post:
http://forums.fivetechsupport.com/viewtopic.php?f=3&t=27120&start=0#p150719
El build que he usado es el b谩sico de los samples. He probado a帽adiendo la %hdirl%\hbvmmt.lib seg煤n he le铆do en ese post, pero no he notado cambios.
Gracias de antemano!
Roberto S谩nchez K.