값을 원자 단위로 읽은 다음 StackExchange C# 드라이버를 사용하여 Redis에서 값을 쉽게 삭제할 수 있습니까?
Redis에서 항목을 버퍼링하고 특정 임계 값에 도달하면 항목을 검색하지만 내 버퍼를 플러시하려고합니다. 목록에 항목을 저장하고 "버퍼를 비우는 중"이라고 말하면 목록을 삭제하고 싶습니다.
"키": [항목 목록] 당신은 트랜잭션을 생성하고 GET을 수행 할 수 있습니다StackExchange.Redis를 사용하여 Redis에서 원자 읽기 및 삭제
2
A
답변
3
/DEL 원자,이 같은 :
var db = connectionMultiplexer.GetDatabase();
var tran = db.CreateTransaction();
var getResult = tran.StringGetAsync(key);
tran.KeyDeleteAsync(key);
tran.Execute();
var value = getResult.Result;
이 레디 스에 다음 명령을 보냅니다 :
MULTI GET "key" DEL "key" EXEC
+0
키가 목록이라면,'tran.ListRangeAsync'에 대한 호출을 변경해야합니다. – thepirat000
+0
그건 정확히해야 할 일입니다! – Ben
A [트랜잭션]에 감싸 (https://github.com/StackExchange/StackExchange.Redis/blob/master/Docs/Transactions.md)? – apokryfos
http://www.rediscookbook.org/get_and_delete.html도 StackExchange.Redis와 함께 사용해야합니다. –
@apokryfos 정확히! 좋은 지적! 감사! – Ben