On Tue, 11 Mar 2014 20:23:53 GMT, Sönke Ludwig wrote:

On Tue, 11 Mar 2014 20:03:22 GMT, Craig Dillabaugh wrote:

(...)
Since, I figure someone may ask what classifyTask does here it is:

clip

Is it possible that something I am doing in my classifyTask() function is blocking the server response?

The std.process.wait is the evil call here. There are two possibilities to solve this:

So I've attempted to try runWorkerTask, I have the following code to run my classifyTask:

runWorkerTask( &classifyTask, bands.idup, "cluster", "isoclus.out.json", image_dir, image);  //source/app.d(361)

But this fails with

Error: static assert  "Argument type ulong[] is not safe to pass between threads."
source/app.d(361): instantiated from here: runWorkerTask!(void, ulong[], string, string, string, ImageDB)

Is there any way to pass an array to a function run in runWorkerTask?