We started discussing this in the Ptrs, threading, and crashes thread but I wanted to bring it up again since we didn't reach a conclusion.
What is the data sharing/consistency model for OpenSG when using multiple threads on the same aspect? For example, I propose something like the following. This would give something that looks to the user like a standard read/write hazard model they are used to in regular code. * Can not directly edit fields on the same field container in multiple threads * Can create field containers in any thread (create, but can't share) * Can use/reference field containers from any thread (read access) * Can connect field containers from any number of threads to field containers previously created in another thread. (ex: shared materials) * Can call commitChanges and commitChangesAndClear in any thread and can be called simultaneously with call in another thread Optional ideas (probably can't do) * Can edit fields of same field container in multiple threads, but only if the access is protected by a critical section. * Can add children to the same node in parallel threads Any other ideas? I don't propose that this is the "right" way to do it, I just want to see a formal description of what should be possible so users know what to expect and test cases can be written to guarantee that this is actually supported. Thanks, Allen ------------------------------------------------------------------------------ This SF.net email is sponsored by: High Quality Requirements in a Collaborative Environment. Download a free trial of Rational Requirements Composer Now! http://p.sf.net/sfu/www-ibm-com _______________________________________________ Opensg-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensg-users
