void handler(int signal){ throw new Exception("Signal caught"); } typedef void(*sighandler)(int); extern(C)void function(int) signal(int, sighandler); void main(){ signal(2, &handler); while(1)std.c.time.usleep(10000000); }