Я использую node-redis
. В коде, как это:Нужно ли ждать ответа на вызов WATCH в Redis (в node.js)?
var store = require('redis').createClient();
store.watch('some:key');
store.get('some:key', function (err, results) {
var multi = store.multi();
// COMPUTE SOMETHING WITH results
multi.set('something:or:other', 25);
multi.exec(checkAllIsWell);
});
Если линии 1-2 чтения
store.watch('some:key', function (err, alwaysok) {
store.get('some:key', function (err, result) {
или будет watch
всегда иметь непосредственный эффект?
РЕДАКТИРОВАТЬ: немного пересмотреть вопрос, гарантируется ли последовательность при последовательных вызовах на том же клиенте Redis? Или может ли ВАМТ произойти после GET?
Ну, в 'node-redis', WATCH всегда _calls back_ с OK (но _returns_ true). Вопрос, однако, заключается в том, всегда ли он вступает в силу и немедленно вызывает OK. – Grumdrig
Порядок команд должен быть одинаковым независимо от того, будете ли вы ждать обратного вызова или нет, и это все, что имеет значение. – Theo
Спасибо, @ Theo, за помощь в разъяснении. – Grumdrig