avi
03/28/2023, 11:30 PMWalshy | Pages
03/28/2023, 11:30 PMkian
03/28/2023, 11:30 PMWalshy | Pages
03/28/2023, 11:31 PMWalshy | Pages
03/28/2023, 11:31 PMkian
03/28/2023, 11:32 PMkian
03/28/2023, 11:32 PMavi
03/28/2023, 11:34 PMts
export class Counter {
constructor() {
setInterval(this.tick.bind(this), 1000);
}
async tick() {
await scheduler.wait(1);
const now = Date.now();
console.log(now);
}
async fetch() {
return new Response('Hello, world!');
}
}
avi
03/28/2023, 11:34 PMavi
03/28/2023, 11:35 PMDate.now()
still frozen despite calling scheduler.wait(1)
avi
03/28/2023, 11:39 PMavi
03/28/2023, 11:41 PMUnsmart | Tech debt
03/28/2023, 11:41 PMkian
03/28/2023, 11:41 PMavi
03/28/2023, 11:41 PMavi
03/28/2023, 11:41 PMkian
03/28/2023, 11:42 PMts
export default {
async fetch() {
const start = Date.now()
await scheduler.wait(1)
const end = Date.now()
return new Response(`scheduler: ${end - start}`)
}
}
kian
03/28/2023, 11:42 PMUnsmart | Tech debt
03/28/2023, 11:42 PMkian
03/28/2023, 11:42 PMavi
03/28/2023, 11:42 PMavi
03/28/2023, 11:43 PMsetInterval
avi
03/28/2023, 11:43 PMkian
03/28/2023, 11:43 PMnow
showing, a frozen timestamp or 0
?avi
03/28/2023, 11:43 PMts
export default {
async fetch(req: Request, env: any) {
let id = env.COUNTER.idFromName('A');
let obj = env.COUNTER.get(id);
return obj.fetch(req);
},
};
export class Counter {
constructor() {
setInterval(this.tick.bind(this), 1000);
}
async tick() {
const start = Date.now();
await scheduler.wait(1);
const end = Date.now();
console.log(`scheduler: ${end - start}ms`);
}
async fetch() {
return new Response('Hello, world!');
}
}
avi
03/28/2023, 11:43 PMscheduler: 0ms
foreverUnsmart | Tech debt
03/28/2023, 11:44 PMavi
03/28/2023, 11:44 PMUnsmart | Tech debt
03/28/2023, 11:44 PM