Index: sp_counted_base_aix.hpp =================================================================== --- sp_counted_base_aix.hpp (revision 76107) +++ sp_counted_base_aix.hpp (working copy) @@ -82,6 +82,8 @@ { if( fetch_and_add( &use_count_, -1 ) == 1 ) { + // memory barrier + __asm__ __volatile__("isync"); dispose(); weak_release(); } @@ -96,6 +98,8 @@ { if( fetch_and_add( &weak_count_, -1 ) == 1 ) { + // memory barrier + __asm__ __volatile__("isync"); destroy(); } }