Walter, OK, thank you very much for very logical explanation.
I think, this problem is not my domain, then I'll leave it to you and more experienced developers. :-) Andi On Mon, 30 Jul 2012 09:09:18 -0300 Walter Negro <wne...@vstour.com> wrote: > Andi, > > The message was clear. I test mtstress without error in a notebook with > 2 cores. > But when test with 8 cores (4 cores HT), after some test I have similar > error but not the same. > > -------------------- Internal Error Handling Information > --------------------- > > Subsystem Call ....: BASE > System Code .......: 1005 > Default Status ....: .F. > Description .......: Class: 'HBCLASS' has no property > Operation .........: ACSUPER > Arguments .........: [ 1] = Type: O Val: { HBCLASS Object } [ 2] = > Type: A Val: { Array of 0 Items } > Involved File .....: > Dos Error Code ....: 0 > Running threads ...: 10 > VM thread ID ......: 17 > OS thread ID ......: 74112 > > Trace Through: > ---------------- > HBCLASS:NEW : 0 in Module: source\rtl\tclass.prg > HBCLASS:NEW : 0 in Module: source\rtl\tclass.prg > HBOBJECT : 0 in Module: source\rtl\tobject.prg > TTEST : 0 in Module: mtstress.prg > STRESS : 272 in Module: mtstress.prg > -------------------------------------------------------------------------------- > > I change mtstress.prg in the next form and test in 8 cores PC without errors > > IF cShow != NIL > bShow := .F. > ELSE > bShow := .T. > ENDIF > > // Create classes before start threads > // Creation of class are not thread safe > TTest() > > nStart := Seconds() > > StartThread( @Collector(), 15 ) > ---------- > > With few processors is difficult to generate error in mtstress when > classes are created but with 8 processors you have high possibility that > two threads want to create a class at the same time. > > Walter Negro > > > El 29/07/2012 11:37 p.m., Andi Jahja escribió: > > Hi Walter, > > > > Perhaps the message is unclear. I hereby attached the error.log file. > > Just to inform you that there was no error before this. Meanwhile, I'll > > take a look too. :-) > > > > Thank you. > > > > Andi > > > > On Sun, 29 Jul 2012 22:27:03 -0300 > > Walter Negro <wne...@vstour.com> wrote: > > > >> Hello Andi, > >> mtstress.prg in svn have 235 lines, and STRESS function end in line 196. > >> Your error is in line 272. > >> > >> But I can say that this error can be generated because creation of class > >> is not thread safe. > >> Test to create classes in thread 1, before StartThread(), adding a > >> simple line TTEST(). > >> > >> Walter Negro > >> > >> > >> El 29/07/2012 07:56 p.m., Andi Jahja escribió: > >>> Hello Walter, > >>> > >>> After this changes, I got the following error when running > >>> tests/mtstress.prg: > >>> > >>> -- begin -- > >>> X H A R B O U R - Multithreading / Stress tests > >>> (You'll seen screen glittering: don't worry, its normal) > >>> (Press space to switch detailed screen output on and off) > >>> > >>> Thread 1 Macro test 384: HAF > >>> Thread 2 Macro test 441: PND > >>> Error BASE/3006 Invalid class handle: hb_clsInst() Arguments: ( [ 1] = > >>> Type: N > >>> Val: 0)cro test 441: PNDThread 1 Macro test 147: VOT > >>> Thread 5 Macro test 441: PND > >>> Error at ...: __CLSINST(0) in Module: d 1 Macro test 145: FTUThread 7 > >>> Macro test > >>> Called from : HBOBJECT(0) in Module: source\rtl\tobject.prgLRTV > >>> Called from : TTEST(0) in Module: mtstress.prg > >>> Called from : STRESS(272) in Module: mtstress.prg > >>> > >>> -- end -- > >>> > >>> Would you please take a look? > >>> > >>> Thank you. > >>> > >>> Andi > >>> > >>> On Sun, 29 Jul 2012 10:53:22 -0300 > >>> Walter Negro <wne...@vstour.com> wrote: > >>> > >>>> 2012-07-29 10:18 UTC-0300 Walter Negro <wnegro/AT/vstour.com> > >>>> * source/vm/classes.c > >>>> ! Correction in hb_clsFinalize() for not to skip the execution of > >>>> the destructor > >>>> of an object when this object is destroyed in a method of a > >>>> parent class. > >>>> > >>>> Ron: > >>>> Now the code that send in previous mail execute all destructor correctly > >>>> and print: > >>>> Cleanup: NIL > >>>> Cleanup: 1 > >>>> Cleanup: 7 > >>>> Cleanup: 3 > >>>> Cleanup: 2 > >>>> Cleanup: 8 > >>>> > >>>> Walter Negro ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ xHarbour-developers mailing list xHarbour-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xharbour-developers