diff options
author | Jeffrey <jeffryan@tamu.edu> | 2022-03-30 13:18:32 -0500 |
---|---|---|
committer | Jeffrey <jeffryan@tamu.edu> | 2022-03-30 13:18:32 -0500 |
commit | 17772ef53e57620f47c426fa4557671a86f1b3ae (patch) | |
tree | 020360b108dbb6655eb4d8f7b17f569d185dd926 /src/cryptonote_basic/miner.h | |
parent | Merge pull request #8216 (diff) | |
download | monero-17772ef53e57620f47c426fa4557671a86f1b3ae.tar.xz |
Eliminate dependence on boost::interprocess #8223
In this repo, `boost::interprocess` was being used soley to make `uint32_t` operations atomic. So I replaced each instance of
`boost::interprocess::ipcdetail::atomic(...)32` with `std::atomic` methods. I replaced member declarations as applicable. For example,
when I needed to change a `volatile uint32_t` into a `std::atomic<uint32_t>`. Sometimes, a member was being used a boolean flag, so
I replaced it with `std::atomic<bool>`.
You may notice that I didn't touch `levin_client_async.h`. That is because this file is entirely unused and will be deleted in PR monero-project#8211.
Additional changes from review:
* Make some local variables const
* Change postfix operators to prefix operators where value was not need
Diffstat (limited to 'src/cryptonote_basic/miner.h')
-rw-r--r-- | src/cryptonote_basic/miner.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cryptonote_basic/miner.h b/src/cryptonote_basic/miner.h index df3f56f68..5da81e3d1 100644 --- a/src/cryptonote_basic/miner.h +++ b/src/cryptonote_basic/miner.h @@ -118,14 +118,14 @@ namespace cryptonote }; - volatile uint32_t m_stop; + std::atomic<bool> m_stop; epee::critical_section m_template_lock; block m_template; std::atomic<uint32_t> m_template_no; std::atomic<uint32_t> m_starter_nonce; difficulty_type m_diffic; uint64_t m_height; - volatile uint32_t m_thread_index; + std::atomic<uint32_t> m_thread_index; volatile uint32_t m_threads_total; std::atomic<uint32_t> m_threads_active; std::atomic<int32_t> m_pausers_count; |