The future won't ever complete if you don't connect the waker from the context! Prove this out by making the windowops functions async and verifying them in the async example