Branch: Tag:

2019-04-17

2019-04-17 11:33:48 by Jonas Walldén <jonasw@roxen.com>

Don't queue RoxenConcurrent callbacks in handler threads unless they are up
and running already. If not available we spawn a temporary thread instead to
avoid potential deadlock issues.

863:   protected array(object) handler_threads = ({});   //! The handler threads, the list is kept for debug reasons.    + int(0..1) handler_threads_available() + { +  return sizeof(handler_threads) && 1; + } +    void start_handler_threads()   {    if (query("numthreads") <= 1) {