Hi,
I came across an interesting problem: Java3D engine performance
_HIGHLY_ depends on where, or in other words when, the Canvas3D
instance is being created. A note: i do NOT use SimpleUniverse class
and write all architecture (Canvas3D->VirutalUniverse->....) manually.
Now, when Canvas3D instance is created _right_ before the output the
peer starts, everything works fine. But as soon as i first create an
instance, then some time passes (user makes some selections, etc) and
only after that i add this instance to the component that is already
displayable, that is make Canvas3D itself displayable, the
problems begin - awfully poor performance. Setting Canvas3D instance
to null and then constructing it again before making it displayable
doesn't help at all. I almost sure that the problem is how GC collects
Threads objects. In a book i came across a note that
>> Some GCs do NOT reclaim the space allocated to any object of the
>> Thread class. Furthermore, because the Thread is never considered
>> collectable, data to which the Thread has access cannot be collected
>> either....
So, possibly all the problems are because of how GC works? Another
hunch is that VM either makes the priority of rendering lower somehow
or starts scheduling the threads in some weird way, possibly thinking
that there is a starvation somewhere in the program. All this might
have happened due to that period of 'inactivity' of highly prioritized
Thread (that is Canvas3D). From Java3D doc we can see that
> When a Canvas3D is created, it is initially marked as being started.
So, can this problem be helped somehow? That is can preserve the
performance and create Canvas3D instance wherever i like to?
Thanks in advance.
vladimir
>-----<===========>-----<
-=V=-
>-----<===========>-----<
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".