View Single Post
Old 03-23-2017, 04:19 PM   #7
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 6,795
Default

Quote:
Originally Posted by SpiderFox View Post
I messed it up again ... I wish I were better in C++ ... I mess it up all the time and it really drives me crazy ... could you please have a look why it hangs again?
Sorry, your project is so big to take a look at, that at the moment I can't give better advice than to be really careful that you don't do anything like sleeping, waiting, incorrect mutex locking, long/infinite loops and such in the GUI thread. The GUI thread must constantly return back to the GUI event loop as quickly as possible. (I didn't extensively look at the code yet, but it looks like your problem is about waiting for the std::future in the GUI thread.)

Another thing to take care of is to not use the JUCE GUI or Reaper API(*) functions from anything else but the GUI thread. They may appear to work at times when called from other threads but probably just lead to hangs and crashes or worse problems.

(*) Some of the Reaper API functions may be thread safe, but I believe most are not.
__________________
For info on SWS Reaper extension plugin (including Xenakios' previous extension/actions) :
http://www.sws-extension.org/
https://github.com/Jeff0S/sws
--
Xenakios blog (about HourGlass and λ) :
http://xenakios.wordpress.com/

Last edited by Xenakios; 03-23-2017 at 04:59 PM.
Xenakios is online now   Reply With Quote