On Friday, 7 November 2014 at 22:14:41 UTC, Laeeth Isharc wrote:
since you didn't get an answer.

https://code.google.com/p/modwsgi/wiki/ProcessesAndThreading


you can turn off threads and processes to aid debugging:

https://code.google.com/p/modwsgi/wiki/ProcessesAndThreading


StartServers 1
ServerLimit 1

With this configuration, only one process will be started, with no additional processes ever being created. The WSGI environment key/value pairs indicating how processes and threads are being used will for this configuration be as follows.

wsgi.multithread        False
wsgi.multiprocess       False

In effect, this configuration has the result of serialising all requests through a single process. This will allow an interactive browser based debugger to be used, but may prevent more complex WSGI applications which make use of AJAX techniques from working. This could occur where a web page initiates a sequence of AJAX requests and expects later requests to be able to complete while a response for an initial request is still pending. In other words, problems may occur where requests overlap, as subsequent requests will not be able to be executed until the initial request has completed.
-----
although obviously that is not a solution to your problem, it might help pinpoint it.

did you try tracking init state in your library and have entry points call D runtime if not already initialized?

Thanks. I'll use that information about WSGI to test whether it really is a thread/process issue. Multiple requests causing re-entry definitely isn't the problem yet but worth being wary of down the road. Also intrigued by the idea of using a browser-based debugger.

I tried a variety of combinations of initialize and terminate but not specifically calling initialize from the request thread only once and without calling terminate. I'll give that a go but I'm no too hopeful as initialize/terminate pairs don't work, initialize from the start-up thread doesn't work and the docs are unclear whether initialize doesn't already do said state checking for me.

Reply via email to