Archipelago
Archipelago copied to clipboard
Core: observe and report currently long-running function
What is this fixing or adding?
should make it easier to identify which world got a generation stuck entirely, like in https://discord.com/channels/731205301247803413/1229944476978380992
How was this tested?
by making the sleeps smaller for my sanity and introducing some sleeps in world methods
Generation stalling in <bound method ALTTPWorld.generate_early of <worlds.alttp.ALTTPWorld object at 0x0000021FC486A750>>, running since 2 seconds ago.
I think I see another problem.
During the multithreaded output phase, AutoWorld.call_single calls _timed_call which uses this.
So multiple threads will try to use the same instance of the Observer, each one overwriting the information of the others.