One of our users, Dave (xad), caught a serious regression bug with the thread pool configuration. A patch is now available so next time you start the SafiWorkshop you should see an update notification. If you don't, please select help->update from the main menu. After updating you should see an entry in the "Pending Updates" table on the SafiServer View tab (assuming you're connected to a SafiServer). Click on the entry so it's selected and press "Push Selected Updates to Server". The SafiServer will need to restart following this update.
Previous to this patch, the thread pool on the SafiServer was defaulting to 10 threads, didn't correctly observe the settings in fastagi.properties, and wasn't creating more threads beyond the initial count even when all those threads were in use and the total count was below the configured maximum.
The global threadpool size now observes values in resources/fastagi.properties. Namely, 'maximumPoolSize' which determines the maximum allowed number of threads allowed to be active at any given time, and 'queueSize' ('poolSize' is also accepted but is deprecated and may be removed in a future release) which determines the size of the job queue which is where jobs will be queued until a thread becomes available. If no threads are available and the job queue is full, execution of the job will be rejected and an exception will be thrown.
Thanks to Dave for finding and reporting this serious issue.