How to kill whole application if child thread raises an exception?

dm via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Wed Oct 26 01:42:02 PDT 2016


Hi. I tried code below:

import std.concurrency;
import std.stdio;

void func()
{
     throw new Exception("I'm an exception");
}

void main()
{
     auto tID = spawn(&func);
     foreach(line; stdin.byLine)
         send(tID, "");
}

I expect my application will die immediatly, but main thread 
still running and I don't see any errors.
I want to kill all my threads if it is unhandled exception.
How can I do that?


More information about the Digitalmars-d-learn mailing list