Code: Alles auswählen
Procedure.l pGetValue()
Protected a.l
a = 123
ProcedureReturn @a
EndProcedure
*a.LONG = pGetValue()
Debug *a\l
Code: Alles auswählen
Procedure.l pGetValue()
Protected a.l
a = 123
ProcedureReturn @a
EndProcedure
*a.LONG = pGetValue()
Debug *a\l
Dim b.l(1)
Debug *a\l
Code: Alles auswählen
Procedure.l pGetValue()
Protected a.l
a = 123
ProcedureReturn @a
EndProcedure
a.l = PeekL(pGetValue())
Debug a
Dim b.l(1)
Debug a
Leider lässt sich dafür kein Code erfinden, der nach wenigen Sekunden Laufzeit direkt Fehler ausgibt. Aber im Grunde würde das dann so aussehen:
Code: Alles auswählen
Procedure Thread(a.l)
Repeat
Dim b.l(Random(10))
ForEver
EndProcedure
Procedure.l pGetValue()
Protected a.l
a = 123
ProcedureReturn @a
EndProcedure
hT.l = CreateThread(@Thread(), 0)
For a.l = 1 To 1000
a.l = PeekL(pGetValue())
If a <> 123 : Debug a : EndIf
Next
KillThread(hT)