Skip to content
Commit Detail

Commit 6b17864

Author
Kenton Varda <kenton@cloudflare.com> 2025-05-16 19:59:50 -0500
Parents
1d9834c
Tree
edfc8c8
Cleanup: `callImpl` doesn't need `ownCallContext` and `thisCap` anymore.

Since we're no longer using the hack where `callImpl()` runs as part of a `ctx.addTask()`, it's now the case that the promise returned by `callImpl` will be canceled if the incoming RPC is canceled. The whole reason to hold onto `thisCap` is because if the RPC was canceled, then the RPC server could subsequently be dropped, but the addTask()ed callImpl() could still be running, so it needed to make sure `this` didn't disappear under it. But now the body of `callImpl()` will actually be canceled, so it doesn't matter if `this` goes away.

We still do need `ownCallContext`, but we can acquire it later than we did before, inside the body of `callImpl()` -- because if the call is canceled before that, we won't get to this point anyway.

Files changed

1 file changed~1 modified