in reply to Re^2: IO::Async::Loop in multiple modules all loaded - code provided
in thread IO::Async::Loop in multiple modules all loaded

which means there are instantiated loop object in each fetch() running, not a singleton.

That's not right. IO::Async::Loop->new returns a singleton.

sub new { return our $ONE_TRUE_LOOP ||= shift->really_new; }

That shouldn't be a problem, though. If your code is correct, it doesn't matter if multiple modules use the same loop.

Replies are listed 'Best First'.
Re^4: IO::Async::Loop in multiple modules all loaded - code provided
by bliako (Abbot) on Feb 19, 2026 at 22:04 UTC

    Thanks for the information, it was unclear to me.

    That shouldn't be a problem, though. If your code is correct, it doesn't matter if multiple modules use the same loop.

    Or too correct! As, I was doing a $loop->stop after closing the websocket.