OK, I convinced myself that this will be OK but could you do me a big favor and consolidate the use of load() and store() into SysAtomics under control of USE_CPP11_ATOMICS? I propose the following

CPP_LOAD(var) becomes either var.load(std::memory_order_consume) or just var

CPP_STORE(var, val) becomes var.store(val, std::memory_order_release) or var = val

CPP_MUTEX(stmt) becomes stmt or doesn't inline stmt

This means moving the code now in XrdSys/XrdSysPthread.hh to XrdSys/XrdSysAtomics.hh
I say this because if/def sprinkling makes the code hard to read and I know there are other instances of this in the code (e.g. pre-lock tests). That way we will be in the position of easily making the modification.


Reply to this email directly or view it on GitHub.



Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1