diff --git a/EgtGeomKernel.rc b/EgtGeomKernel.rc index 6e8de59..c47a7b8 100644 Binary files a/EgtGeomKernel.rc and b/EgtGeomKernel.rc differ diff --git a/GeomDB.cpp b/GeomDB.cpp index fd300d2..c2b7ef7 100644 --- a/GeomDB.cpp +++ b/GeomDB.cpp @@ -38,16 +38,17 @@ using namespace std ; class LockAddErase { public : - LockAddErase( atomic_flag& bAddEraseOn, bool bUse = true): m_bAddEraseOn( bAddEraseOn), m_bUse( bUse) + LockAddErase( atomic_flag& bAddEraseOn, bool bUse = true) + : m_bAddEraseOn( bAddEraseOn), m_bUse( bUse) { if ( ! m_bUse) return ; - while ( m_bAddEraseOn.test_and_set()) { + while ( m_bAddEraseOn.test_and_set( memory_order_acquire)) { this_thread::sleep_for( chrono::nanoseconds{ 1}) ; } } ; ~LockAddErase( void) { if ( ! m_bUse) return ; - m_bAddEraseOn.clear() ; + m_bAddEraseOn.clear( memory_order_release) ; } ; private :