Skip to content

Use nim-async-channels to communicate threads #3

@Ivansete-status

Description

@Ivansete-status

The communication between the working/FFI and client thread happens throughout taskpools/channels_spsc_single. While this works well in general, the client thread might get eventually blocked in the following, if the working thread is busy:

let res = ctx.reqReceivedSignal.waitSync(timeout)

Then, we need to follow @arnetheduck's suggestion and, instead, use this: https://github.com/status-im/nim-async-channels

Note: use the following as an inspiration on how to use it: status-im/nim-json-rpc#254

( cc @NagyZoltanPeter .)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions