sql >> Databasteknik >  >> NoSQL >> Redis

Redis Pub/Sub ServiceStack, avbryter tråden

Ett exempel som visar hur man prenumererar på och avslutar prenumerationen på meddelanden finns i RedisMqServer, t.ex.:

using (var subscription = redisClient.CreateSubscription())
{
    subscription.OnUnSubscribe = channel => 
        Log.Debug("OnUnSubscribe: " + channel);

    subscription.OnMessage = (channel, msg) =>
    {
        if (msg == "STOP")
        {
            Log.Debug("Stop Command Issued");
            Log.Debug("Unsubscribing from all Channels...");
            subscription.UnSubscribeFromAllChannels(); //Unblocks thread.
        }
    };

    subscription.SubscribeToChannels(QueueNames.TopicIn); //blocks thread
}

Där den använder ett anpassat kontrollmeddelande för att avblockera bakgrundstråden och avsluta prenumerationen från alla kanaler från prenumerationen OnMessage hanterare.




  1. Mocking databas i node.js?

  2. Det nya sättet att hantera databaser med öppen källkod

  3. MongoDB $atanh

  4. Uppdatera ett underdokument som finns i en array som finns i ett MongoDB-dokument