diff --git a/EXE_Redis.cpp b/EXE_Redis.cpp index 23dcc02..544cd7a 100644 --- a/EXE_Redis.cpp +++ b/EXE_Redis.cpp @@ -721,7 +721,7 @@ RedisPubSubUnsubMsgCallback( redisAsyncContext* ctx, void* r, void*) ++ LockedMessage.nCount ; LockedMessage.sMessage = sMessage ; LockedMessage.Lock.clear( memory_order_release) ; - LockedMessage.Lock.notify_all() ; + LockedMessage.Lock.notify_one() ; } } else { @@ -1259,7 +1259,7 @@ ExeRedisAsyncUnsubscribe( int nIdConnection, const string& sChannel) // Elimino i Messaggi dalla mappa for ( auto Iter = vAsyncRedisMessages.begin() ; Iter != vAsyncRedisMessages.end() ; ) { - if ( Iter->first.rfind( GetMessageMapKey( nIdConnection, "")) == 0) + if ( Iter->first.rfind( GetMessageMapKey( nIdConnection, sChannel)) == 0) Iter = vAsyncRedisMessages.erase( Iter) ; else ++ Iter ; @@ -1378,7 +1378,7 @@ ExeRedisAsyncGetMessage( int nIdConnection, const string& sChannel, int& nCount, nCount = LockedMessage.nCount ; sMessage = LockedMessage.sMessage ; LockedMessage.Lock.clear( memory_order_release) ; - LockedMessage.Lock.notify_all() ; + LockedMessage.Lock.notify_one() ; } return true ;