При чтении документации не похоже, что Set POP (SPOP
) является атомарным, где LPOP
, RPOP
и т. Д.Это также то, что я вижу с моим кодом, где у меня есть два клиента, использующие lettuce
и реактивные потоки, прослушивающие SPOP
.Когда что-то выдвигается, оба клиента получают то же значение, которое было только что выдвинуто.Я действительно надеялся избежать этого, потому что мне нужен набор для сохранения уникальности моих значений, и надеялся, что SPOP будет идентичен LPOP.
У меня есть клиент pubsub, который передает этот набор, и несколько экземпляров будут иметь несколькоклиенты pubsub, поэтому установите для предотвращения выполнения дополнительной работы.
Я могу либо убедиться, что список содержит только уникальные элементы, либо я могу сделать SPOP атомарным.Как мне это сделать?