From: Adam M. <mcl...@gm...> - 2006-08-25 20:10:31
|
They're being treated as data registers. One thread writes to them, two threads read from them. So each thread has a pointer to an object that contains the array; one of them calls set methods, others call get methods. On 8/25/06, Dave Hylands <dhy...@gm...> wrote: > Hi Adam, > > > I have a large array of 'long int's that several threads are > > accessing quite often. I'd rather not cede performance to a number of > > mutexes. As I understand, one way around this is to ensure that the > > assignment operator for a value is atomic, and this may be possible > > for single instance of a primitive type via an assembler call. Does > > anyone know if it's possible to atomically assign a 'long' value on > > the PXA like this? > > On the pxa, assignment of a 32-bit long that's aligned on a 32-bit > boundary should be atomic. > > But there are bigger issues. > > What are you doing with the array of longs? How are they being manipulated? > You'll probably also need to ensure that any data being shared by > multiple threads is declared volatile. > > -- > Dave Hylands > Vancouver, BC, Canada > http://www.DaveHylands.com/ > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users > |