Let me summarize. Assuming I have an OLEPUBLIC multithreaded/multiuse EXE:
*-------------------
* Saved .prg file in test project
define class myole as session olepublic
pdata=0
threadId=.null.
function init()
this.threadId=Application.threadid
endfunc
enddefine
*-------------------
p1=createObject('test.myole')
p2=createObject('test.myole')
p3=createObject('test.myole')
*-------------------
What you are saying is that p1, p2, p3 all use the same processId and threadId sharing the same code but each one has its own copy of 'pdata' and 'threadid' (of course 'this.threadid' is the same for all instances in this case.)
I just need a way to uniquely identify each object internally. I can do this of course by making some random number or even a globally incrementing public variable. I wanted to avoid this and use one that is part of the system. How does VFP know which object's data belong to p1 or p2 or p3? There must be a handle somewhere to point to the data.
Regards,
Costas