The goal is to speed up instances where we did one time initialization and then just read operations at main runtime. Using locks to protect these seldom written resources was wasteful and costly. So they are getting a read-write spin lock which is basically transparent as long as we are reading only.
Similarly, we removed poco singleton holder in a few places because it was causing unnecessary locking and should not be required because of the c++11 standard.
Remove uses of poco singleton holder, should not be needed under c++11
Added Pothos::Util::SpinLockRW for single write, multi-read
The goal is to speed up instances where we did one time initialization and then just read operations at main runtime. Using locks to protect these seldom written resources was wasteful and costly. So they are getting a read-write spin lock which is basically transparent as long as we are reading only.
Similarly, we removed poco singleton holder in a few places because it was causing unnecessary locking and should not be required because of the c++11 standard.