Hi!

On Fri, 2005-07-15 at 20:00 +0200, Johan Grafstrom wrote:
        Disabled ChangList::applyTo(int aspect)

Gerrit Voss wrote:

there is one trick which would explain the problem and this is that the
changed calls are done for the aspect of the thread doing the sync and
not the receiving one. I'll have to check if there is an easy way
around it.

That seem like a plausible cause of the problems we had. Currently we
switch two times more than needed between the threads for synchronization.
It works but a working applyTo would be better of course :-).


       Bug in ChangeList?

A (possible) bug in current apply() method: The readOnly members
are set to false after the method is called.  The value is set to
false on both the ChangeList instance called and the ChangeList
instance of the current thread. I assume this is not on purpose?


at least for the changelist from the current thread it is, for the
current instance I'm, not quite sure why we change the readonly
flags during sync. This means the app probably must do some copying
of changelists in case more than 1 level syncs are needed.

I assumed that it was a precaution to make sure the lists was unchanged
during synchronization. However, what I meant was that after the
synchronization(apply()), the readOnly values are reset to false. Not reset to the value it had before. (So a readonly aspect becomes
r/w after changes has been applied to it).


Best regards,

  Johan Grafström



Gerrit Voss wrote:
Hi,

On Fri, 2005-07-15 at 20:00 +0200, Johan Grafstrom wrote:

Hi Dirk and Gerrit!

I have some questions and a possible feature request regarding
osg::ChangeList.


        Disabled ChangList::applyTo(int aspect)

In the source code there are a disabled method "applyTo" that
takes an aspect as argument.  Using that, it is (or would be)
possible to make the synchronization in the thread that is most
convenient.  For instance: a thread that happens to know that the
other thread(s) is locked may apply its changelist to the other
threads.  With the present solution the threads would have to be
exclusively waken up and apply the changlist to its own aspect.

I tried to enable it (the applyTo method) myself, but did not
get it to work good. Synchronization seemed to work but I got
strange errors with materials (everything except background
became white).

Why was the method disabled and is it possible to get it
working and reintroduced again?


there is one trick which would explain the problem and this is that the
changed calls are done for the aspect of the thread doing the sync and
not the receiving one. I'll have to check if there is an easy way
around it.


       Bug in ChangeList?

A (possible) bug in current apply() method: The readOnly members
are set to false after the method is called.  The value is set to
false on both the ChangeList instance called and the ChangeList
instance of the current thread. I assume this is not on purpose?


at least for the changelist from the current thread it is, for the
current instance I'm, not quite sure why we change the readonly
flags during sync. This means the app probably must do some copying
of changelists in case more than 1 level syncs are needed.


       Something fishy with osg::Barrier

Attached to this mail is is a short program that stress-test
osg::Barrier. At least in Win32 it fails almost immediately. If
you allow some slack by introducing some sleeps in the loop, it
seems to work a bit more often. (Not that that is a pretty solution
though :-)


this is a pending issue. There seem to be 2 solutions but I did
not have time to decide which one to use.

regards,
  gerrit



-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users



-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&op=click
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to