DemoRunner Multithreading Demo crashes after 5-10 minutes

DemoRunner 7.0.3 - if you run the Multithreading Demo, just let the default initial screen of moving balls run for 5-10 minutes, DemoRunner crashes.

This was on MacOS Mojave 10.14.6. Crash log attached:

crashlog.txt (78.9 KB)

I then took the PIP of the Multithreading Demo and ran it on Xcode/Mojave. It didn’t crash as quickly, but a few hours later it hit a SIGABRT:

libc++abi.dylib: terminating with uncaught exception of type std::__1::system_error: mutex lock failed: Invalid argument

1 Like

Same issue here on macOS Ventura 13.5.2 (Mac mini M2 Pro), using JUCE 7.0.4 or 7.0.5.

I tried to update to 7.0.6, 7.0.7 or the latest develop (5e52056b9), but I have a different crash (assertion fail) happening right away when loading the MultithreadingDemo:

I use similar code in my plugin, which obviously reproduces the same behavior.
Is there an alternative to the MessageManagerLock that would work properly until this is fixed ?

1 Like

Just to keep you posted I looked into this yesterday. I believe I’ve got a solution but it probably won’t be merged until sometime next week,

Thanks for reporting.

2 Likes

Oh that’s perfect!

We never release on a Friday anyway :smiley:

Have a good weekend!

1 Like

Sorry this took so long, we found another relatively serious issue with the MessageManagerLock unfortunately that fix isn’t merged yet but I’ve merged something that should at least prevent the jassert you were seeing.

I’ll try to keep you posted regarding the other issue we found.