added thread interrupt