Skip to content

Feature request: allow AudioNodes to be !Send and !Sync #91

@Smona

Description

@Smona

Our use-case for fundsp is a single-threaded audio engine which receives commands over a message channel. We have no need to send or share AudioNodes between threads, and we've also found that atomic operations and other synchronization primitives expectedly reduce performance, particularly in WASM.

We've run up against this limitation in our efforts to optimize performance, and it prevents us from using faster interior mutability types like Cell in uses cases that would otherwise work, and forces us to resort to unsafe in ways that rely on implicit assumptions of our codebase (preventing us from ever providing that code in a library in the future). Since it doesn't seem like any functionality of the trait inherently requires these, it would be great if this was more of an opt-in thing, and it would unlock a significant increase in performance ceiling for applications leveraging fundsp.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions