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



------------------------------------------------------------------------------
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

Reply via email to