Bạn không thể lưu trữ đối tượng trong Redis. setTimeout
phương thức trả về một Trình xử lý (tham chiếu đối tượng).
Một ý tưởng sẽ là tạo mảng liên kết của riêng bạn trong bộ nhớ và lưu chỉ mục trong Redis. Ví dụ:
var nextTimerIndex = 0;
var timerMap = {};
var timer = setTimeout(function(timerIndex) {
console.log('Ding!');
// Free timer reference!
delete timerMap[timerIndex];
}, 5 * 1000, nextTimerIndex);
// Store index in Redis...
// Then, store the timer object for later reference
timerMap[nextTimerIndex++] = timer;
// ...
// To clear the timeout
clearTimeout(timerMap[myTimerIndex]);