для реализации критических секций, если есть промисы? например, есть такая функция и надо заблокировать ее вызов, пока предыдущий вызов не закончится:
async checkAndDropTurnRegistration(player, turnId) {
const result = await redis.sismemberAsync('pending_turns:index', `${player._id}:${turnId}`);
await redis.sremAsync('pending_turns:index', `${player._id}:${turnId}`);
return result;
}
Хых, не, никаких локов. Неблокирующее же всё, все дела. Шину надо делать, шириной в 1.
Обсуждают сегодня