Skip to content

Option for platform without threads, mutexes #704

Open

Description

@mincequi

Hi @victimsnino ,
it's been a while since bothering you with further requests. So, i am back 😉

Recently, i started developing on a raspberry pi pico 2 and i would love to use rpp for this. Unfortunately, this platform is missing posix threads, as well as mutexes, etc. Can you imagine a version of this lib without those things?
Besides that, it seems possible, that rpp is usable on that platform.

Regards 😀

Activity

  1. AlexInLog commented on Feb 11, 2025

    @AlexInLog
    Owner

    Hey @mincequi ! Yeah, you are welcome =)
    Would it be enough just to have limited functionality just by splitting headers and not providing operators/functionality relying on threads/mutexes? For example, just provide observable/observer/filter/map and etc? Or do you expect something more? I mean... if yes, then technically it is possible to use it "as is"?

  2. mincequi commented on Feb 11, 2025

    @mincequi
    Author

    Hey @victimsnino,
    of course splitting functionality is perfectly fine for me. So, only "immediate execution" operators would work and is ok for me :)
    One could later check, if scheduling is somehow possible on that platform.

    edit: i already tried to only include the (few) things i need, but utils.hpp gets included which includes the mutex header.

  3. AlexInLog commented on Mar 11, 2025

    @AlexInLog
    Owner

    Hey @mincequi , it was a short break for me from RPP, now i'm ready to back to development. Does this issue still relevant to you?

  4. mincequi commented on Mar 14, 2025

    @mincequi
    Author

    Hi @victimsnino ,
    currently, i have a custom implementation to emit events from an object and i do not have an urgent need for an RPP port.
    There is also an arduino impl for Rx: https://github.com/luisllamasbinaburo/Arduino-ReactiveArduino
    Maybe this can also help.

    One could just keep that in mind, if you ever plan to port this to a non-threaded platform.

  5. daixtrose commented on Oct 30, 2026

    @daixtrose
    Contributor

    How about building on coroutines?

  6. AlexInLog commented on Oct 30, 2026

    @AlexInLog
    Owner

    How about building on coroutines?

    Hey! I've thought about it, but actually it is nearly zero profit to do it. For now RPP is fully push-based and no any places to "wait" something. So, current "on_next" executed in place. Making coroutine would just break stack and prove extra overhead.

    If you have some other opinion, I would be glad to see it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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