Skip to content

Interaction between synchronous stream/future read/write and various operations #642

@alexcrichton

Description

@alexcrichton

This issue is borne out of discussion on bytecodealliance/wasmtime#13212 where this first arose within Wasmtime. Specifically it's not clear at this time what should happen in various situations related to a thread being blocked on stream/future read/write and then doing something else, for example:

  • If the stream/future was in a preexisting waitable-set, and then an event happens, where does the event go?
  • If the read/write is cancelled, what happens?
  • If the stream/future is added to a waitable set and an event happens, where does it go?

Overall this is the motivation for gating these operations in the upcoming WASIp3 release since there's no known usage of these variants, but regardless I wanted to file this to track clarifying/documenting these interactions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions