Redis
 sql >> Database >  >> NoSQL >> Redis

Stackexchange.redis non ha il supporto WAIT

WAIT è essenzialmente un'operazione di blocco, che viola il modello di programmazione di condivisione della connessione da cui dipende la libreria (vedi di più qui). Quindi no, questo non è esposto.

Stiamo discutendo idee per consentire un modello di pool/locazione più versatile oltre che il modello condiviso predefinito, ma al momento:questo non esiste. Ma questo è ciò che renderebbe "sicuri" i comandi di blocco.

Puoi emetterlo manualmente tramite Execute , ma se lo fai:sei da solo; se esplode o causa qualsiasi tipo di problema... divertiti con quello!

Il seguente non è supportato (essenzialmente emette un'operazione di blocco), ma se funziona - funziona; se causa problemi, causa problemi:

var tran = db.CreateTransaction();
_ = tran.StringSetAsync("mykey", cacheItem);
_ = tran.ExecuteAsync("wait", 2);
tran.Execute();